Java程序设计三特性
Java程序编写具有三大特征: 封装、继承和多态;
封装
对类中的方法和属性进行权限访问控制,只提供特定接口供外部访问,这样一方面增加了代码的规范性,另一方面增加了代码的访问安全性;
封装是面向对象编程语言对客观世界的模拟,在客观世界里,对象的状态信息都被隐藏在对象内部,外界无法直接操作和修改。对一个类或对象实现良好的封装,可以实现以下目的:
-
隐藏类的实现细节;
-
让使用者只能通过事先预定的方法来访问数据,从而可以在该方法里加入控制逻辑,限制对成员变量的不合理访问;
-
可进行数据检查,从而有利于保证对象信息的完整性;
-
便于修改,提高代码的可维护性。
为了实现良好的封装,需要从两个方面考虑:
-
将对象的成员变量和实现细节隐藏起来,不允许外部直接访问;
-
把方法暴露出来,让方法来控制对这些成员变量进行安全的访问;
继承
继承是相对而言的,需要以父类和子类进行对比,继承的意思是将父类所有的属性和方法(public,private,protected)全部传递给其子类,构造方法除外,如果在父类中是private修饰,那么子类不能正常访问该属性,但是子类其实具有该属性;
多态
多态是指的一个接口可以有多种表现形态,比如有一个Animal接口:
public interface Animal{ void run(); }
有两个对应的子类Dog和Cat:
public class Dog implements Animal{ @Override void run(){ System.out.println("dog running fast"); } } public class Cat implements Animal{ @Override void run(){ System.out.println("cat running slowly"); } }
Animal dog=new Dog();
dog.run();//dog running fast
Animal cat=new Cat();
cat.run();//cat running slowly
此时虽然都是调用的Animal接口的run方法,但是得到的是不同的运行结果,即一个接口可以有多种表现形态;