B4J is a development tool very similar to Basic4android. Instead of generating Android applications, B4J generates standard Java applications. These applications can run on Windows, Linux and Mac computers.
2) The UI framework is different. You will need to rewrite the UI code. Most non-Android specific libraries are identical. This means that it should be easy to port non-Android specific code to B4J.
3) You cannot create Android applications with B4J.
4) No. You will need to import the source code, modify it as needed and recompile it.