A platform type comes from Java where nullability is unknown, so Kotlin treats it as “nullable or non-null” (`String!`). If you treat it as non-null but it’s actually null, you can still get an NPE; prefer proper nullability annotations and safe handling.
Platform types (`T!`) appear when Kotlin calls Java code that lacks nullability metadata. Kotlin can’t be sure whether the value can be null, so it lets you treat it as `T` or `T?` — at your risk.
If you treat it as non-null and Java returns null, you can still crash with an NPE.