Java 继承 封装 类
AiY.. 人气:0类与对象:
类是抽象的数据类型,对象是抽象的数据类型的具体化。
使用new 关键字创建对象,默认初始化为null
一个项目只存在一个main方法,用于测试。
类:(同一个类可以产生不同对象)
只有属性和方法
构造方法:
(1)特点:1、必须和类的名字相同;2、必须没有返回类型,也不能写void
(2)作用:1、使用new关键字,本质是调用构造器;2、初始化对象的值
public Stu() { this.name = "**"; }
封装:
1、属性私有,get\set private 私有
2、封装提高了程序的安全性,保护数据;隐藏代码的实现细节;统一接口;可维护性
3、在set里面给一些条件满足情况
public int getAge() { return this.age; } public void setAge(int age) { if(age>0 && age<=100) { this.age = age; } else { this.age = 33; } }
继承:
1、extends 扩展,子类是父类的扩展;
2、继承是类与类之间的关系
public class PM { public void say() { System.out.println("我有一个亿"); } int money = 10000000; public void setMoney(int money) { this.money = money; } public int getMoney() { return money; } } 子类继承父类的所有属性 public class SE extends PM { }
Java代码详解:
Studnrt类:
package **; public class Student extends Collegestudent { private String name; private int age; private char sex; private String sno; //对子类的属性进行封装 public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { if(age>0 &&age <=100) { this.age = age; } else { this.age = 22; } } public char getSex() { return sex; } public void setSex(char sex) { this.sex = sex; } public String getSno() { return sno; } public void setSno(String sno) { this.sno = sno; } }
collegstudent类:
package **; public class Collegestudent { private String school = "******"; private String college = "******"; private String grclass = "******"; //对父类的属性进行封装 public String getSchool() { return school; } public void setSchool(String school) { this.school = school; } public String getCollege() { return college; } public void setCollege(String college) { this.college = college; } public String getGrclass() { return grclass; } public void setGrclass(String grclass) { this.grclass = grclass; } }
main类:用于输出:
package **; public class main { public static void main(String[] args) { Student ming = new Student(); ming.setName("**"); //如果年龄不符合实际的条件,就体现封装的作用 ming.setAge(32); ming.setSex('男'); ming.setSno("201805050254"); System.out.println("我的名字是:"+ming.getName()+",我的年龄是:"+ming.getAge()+",我的性别是:"+ming.getSex()+",我的学号是:"+ming.getSno()); //子类student中没有学校、学院、班级,所以在子类中扩展父类 System.out.println("我的学校是:"+ming.getSchool()+",我的学院是:"+ming.getCollege()+",我的班级为:"+ming.getGrclass()); } }
加载全部内容