Can you type your own keys? Instead of generating keys, is it possible to type your own? For example, could all the characters be A's for example sake. Or do they have to be generated because they are based off of prime numbers or because it would be to hard to create a matching public key as well?
Since your question has RSA tag, I'm going to speak mostly about RSA, but first...

symmetric cryptosystems

With symmetric key, your key could be anything binary with given length. But, since passwords are weak and aren't binary, you should pass it trough key derivation function (KDF).

RSA and other asymmetric cryptosystems

With asymmetric key, there is some structure to it (at least in some cryptosystems, like RSA. There are asymmetric systems where there isn't any special structure to private key - Thanks Ilmari Karonen). For example in RSA you need two primes p and q of close length, and public key is n=p*q (there are some more things commonly saved, but this smallest amount of information to get key). So you can't simply convert your password to key with KDF.

But there are some techniques that can be used to derive private key solely from password (And for given security and some more things that can be constant). For example, you can use your key as input to CSPRNG (A random function), and then generate 2 random numbers with given length, and then search for closest next prime for those numbers. This (albeit somewhat slowly - same as generating a key) will give you a private key, that will be same for same password. Same can't be done with public-key as far as I know - everything you can do there is use optimal encoding of it and give it to user. But after all it's public key so it's meant to be shared anyway.

This way, every asymmetric cryptosystem can be made where key gives you same key, just by feeding password to KDF and then using it as seed in CSPRNG. This isn't usually done, because this will lead to appearance of same keys (because two people or more used same password). And this is somewhat slow (same as just generating new key). And there are no standardized ways to do that (Thanks user4982).