Importing a class allows it to be used without fully qualifying its name, while extending a class creates a subclass that inherits fields and methods. Importing does not change the program structure, while extending adds the extended class's functionality and allows overriding methods. The key differences are that importing uses the "has-a" relationship and instantiates with "new", while extending uses the "is-a" relationship and subclasses with "extends".