Java封装和继承 小白版
封装
使用对象的方法将对象的变量和方法保护起来,就称为封装。外界只能通过对象的接口(方法)访问对象的服务。
封装就是隐藏对象的属性和实现细节,仅提供公共访问方式来让外界访问
快捷键:Alt+insert——>Getter and Setter
封装的好处
- 隐藏类的实现细节
- 只能通过规定方法访问数据
- 方便加入控制语句
- 方便实现修改
封装原则
- 将不需要对外提供的内容都隐藏起来。
- 把属性都隐藏,提供公共方法对其访问。
封装的步骤
- 修改属性为私有设为private;
- 创建getter和setter方法,设为public用于属性的读写;
- 在gettter和setter方法中加入属性控制语句,用于对属性的合
封装的意义
1.模块化
使得对象的代码能够形成独立的整体,单独进行实现与维护。
2.保证对象数据的一致性并易于维护
对象的变量和实现通过对象的接口进行封装,实现了隐蔽,这使得对象的私有信息被有效的保护起来,防止外界对对象私有信息的修改,保证了信息的一致性;
开发者可以随时改变对象的私有数据和方法,而不影响调用对象接口的其他程序。
实例
public class Person {
//父类公共的属性(封装name,age属性)
private String name;
private int age;
//父类公共的方法
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge(){
return age;
}
public void setAge(int age) {
this.age = age;
}
}
public class Test02 {
public static void main(String[] args) {
Person p = new Person();
p.setName("椰椰");
p.setAge(22);
System.out.println(p.getName() + " ," + p.getAge());
}
}
继承
继承使得子类具有父类的属性和方法,还可以在原有类的基础上进行扩充,添加新的变量和方法。
继承的分类
继承分为单继承和多继承。单继承是一个子类最多只能有一个父类;多继承是一个子类可以有两个以上的父类。
注:Java中的类只支持单继承,而接口支持多继承,即Java多继承的功能是通过接口的方式来间接实现。
继承的实现(格式)
//子类定义的一般格式:
[ 类修饰符 ] class 子类名 extends 父类名{
成员变量;
成员方法;
}
实例
//父类
public class Person {
//父类公共的属性
private String name;
private int age;
//父类公共的方法
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge(){
return age;
}
public void setAge(int age) {
this.age = age;
}
public void eat(){
System.out.println("人类吃饭");
}
}
//子类
public class Student extends Person{ //子类Student继承父类Person
//子类额外的、扩展的属性
private int sno;
//子类额外的、扩展的方法
public int getSno() {
return sno;
}
public void setSno(int sno) {
this.sno = sno;
}
public void study(){
System.out.println("学生学习");
}
}
//测试类
public class Test {
public static void main(String[] args) {
//定义一个学生类对象
Student s = new Student();
s.setName("椰椰") ;
s.setAge(22);
s.setSno(10086);
System.out.println(s.getName()+","+s.getAge()+","+s.getSno());
s.study();
s.eat();
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南