软件编程
位置:首页>> 软件编程>> java编程>> Java十分钟精通类 封装 继承

Java十分钟精通类 封装 继承

作者:AiY..  发布时间:2023-11-25 10:55:58 

标签:Java,继承,封装,类

类与对象:

类是抽象的数据类型,对象是抽象的数据类型的具体化。

使用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());
   }
}

来源:https://blog.csdn.net/qq_44859533/article/details/106265662

0
投稿

猜你喜欢

手机版 软件编程 asp之家 www.aspxhome.com