Java面向对象的三大特征

时间:2021-05-20

  java面向对象的三大特征:“封装、继承、多态”。更多Java技术知识,请登陆疯狂软件教育官网。微信搜索微信号:疯狂软件,参加2015年优惠活动,有机会获得优惠劵和代金劵。

  以本文为例,User类中的变量为私有变量,只能通过创建对象(此时构造方法自动调用)来赋值。

  外界只能通过公有方法api()来访问User类。

  Admin类继承了User类,调用了其构造方法,还重写了method_1方法,增加了一个特有方法power()。

  User文件

  public class User {  /**  * 私有变量, 仅限本类访问  */  private String name;  private int age;  /**  * 构造方法, 自动调用  */  public User(String name, int age){  this.name = name;  this.age = age;  }  /**  * 私有方法, 仅限本类访问  */  private void method_1(){  System.out.println("i am a " + name + " ; my age is: " + age);  }  /**  * 可被子类继承、覆盖和同包调用  */  protected void method_2(){  System.out.println("i am not override");  }  /**  * 公有方法,对外接口  */  public void api() {  method_1();  method_2();  }  }  Admin文件  public class Admin extends User {  /**  * 构造方法  */  public Admin(String name, int age) {  // 使用父类的构造方法  super(name, age);  }  /**  * 覆盖父类的同名方法  */  protected void method_2() {  System.out.println("NO, you are override");啊  }  /**  * 子类特有方法  */  public void power(){  System.out.println("admin is powerful");  }  }  Main文件  public class Main{  public static void main(String[] arg) {  // 实例化一个User对象,并调用User的公有方法  User a = new User("user", 12);  a.api();  // 输出换行,方便区分不同的代码  System.out.println();  // 实例化一个Admin对象,并调用Admin的两个方法  Admin admin_me = new Admin("admin", 23);  admin_me.api(); // 继承自User父类  admin_me.power(); // 自身独有的方法  System.out.println();  /**  * 多态性  */  User test_admin = new Admin("test_admin", 34);  test_admin.api();  // test_admin.power(); // User中没有声明power这个方法,所以不能使用  }  }

以上所述就是本文的全部内容了,希望大家能够喜欢。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章