目录
类与对象
♦️什么类与对象❓
🎏类的定义
🎃定义一个类
🎃成员变量
🎃成员方法
🎏对象的创建使用和引用传递
🎃对象的创建
🎃对象的引用
封装
♦️什么是封装❓
♦️实现封装
♦️private关键字
类与对象
♦️什么类与对象❓
在Java中,类(Class)是一种抽象的数据类型,它定义了一类对象所共有的属性和方法。对象(Object)则是类的具体实例,它是类的一个具体存在,具有类的属性和行为。
类:类是用来创建对象的蓝图或模板。它不占内存空间,只描述了一类对象应有的属性和可以执行的方法。例如,如果一个类名为“Person(人)”,那么它可能包含属性如“name”和“age”,以及方法如“talk”和“walk”
对象:对象是类的具体实现。它占用了内存空间,并且可以执行类中定义的行为。通过使用
new
关键字和类的构造方法,可以创建类的对象实例。例如,创建“Person”类的对象意味着实例化一个人,这个人可以有具体的名字和年龄,并且可以走路和说话。
🎏类的定义
🎃定义一个类
例:创建一个类(人),包括名字,年龄,说话和走路
//创建一个类(人),包括名字,年龄,说话和走路 public class Person{ String name; int age; public void Talk() { System.out.println("说话"); } public void Walk() { System.out.println("行走"); } }
🎃成员变量
成员变量是指类的一些属性定义,标志类的静态特征,它的基本格式如下:
【访问修饰符】【修饰符】【类型】【属性名称】= 【初始值】
- 访问修饰符:public(公共的);protected(受保护的);无修饰符和private(私有的)。
- 修饰符:对属性特征的描述:如static,final 等等。
- 类型:属性的数据类型,可以是任意类型。
- 属性名称:任何合法标识符。
- 初始值:赋值给属性的初始值。
- 举例:
public class Person{ private String name;//默认初始值为null public static int age; }
🎃成员方法
成员方法就是对象所具有的动态功能。基本格式如下:
【访问修饰符】【修饰符】【返回值类型】【方法名称】(【参数】)
{
【异常】【方法体】
}
- 访问修饰符:public(公共的);protected(受保护的);无修饰符和private(私有的)。
- 修饰符:对属性特征的描述:如static,final,abstract 等等。
- 返回值类型:方法返回数据的类型。
- 方法名称:任何合法标识符。
- 参数:可以有多个,使用逗号分隔。
- 异常:关键字:throws 【具体异常】
- 方法体:该方法具体实现功能的地方。
- 举例:
public class Person{ public void Talk() { } public void Sleep(){ } }
🎏对象的创建使用和引用传递
🎃对象的创建
创建对象的一般语法格式如下:
类名 对象名 = new 类名([参数列表])
举例:
//已定义Person类,定义对象 Person s1=new Person(); Person s2=new Person();
🎃对象的引用
对象被创建之后,就可以使用该对象。通过运算符“.”,对象可以实现对自己变量的访问和方法的调用。对象对自己变量访问的语法格式如下:
对象名.变量名;
对象对自己方法调用的语法格式如下:
对象名.方法名([参数值列表]);
举例:
封装
♦️什么是封装❓
对象代表什么,就得封装对应的数据,并提供数据对应的行为。
不需要自己写具体内容,在文库中找关键字即可。
例:人画圆
分析:
- 思考需创建的类,Person类还是Circle类,即在圆类
- 将成员方法实现,即画
♦️实现封装
例:人画圆
class Circle{ double radius; public void Draw() { System.out.println("根据半径为"+radius+"画一个圆"); } }
♦️private关键字
在定义一个类时,给成员变量赋值时需提供一个合适的值,如:
import java.util.Scanner;
class GirlFriend{
String name;
int age=18;
}
当提供的值不符合常理时,代码也不会报错,因此需要用private关键字来进行约束
完整代码:
import java.util.Scanner;
class GirlFriend{
String name="xiao";
int age=18;
public void setAge(int age) {
this.age = age;
}
public int getAge() {
return age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
public class Main{
public static void main(String[] args) {
GirlFriend s=new GirlFriend();
System.out.println(s.getAge());
System.out.println(s.getName());
}
}
总结:
- private关键字主要用于控制对类成员的访问权限
- 被private修饰的成员只能在本类中才能访问
- 针对private修饰的成员变量,如果需要被其他类使用,需提供相应的操作(如set,get)