文章目录
- 面向对象与面向过程
- 面向对象关注的是对象,用类描述这个对象
- 如何定义类
- 如何更改类名
- 类的实例化
- this引用
- 总结
面向对象与面向过程
面向对象就是解决问题的一种思想,主要依靠对象之间的交互完成一件事情。
面向过程好比传统的洗衣服方式:
注重的是洗衣服的过程,少了一个环节可能都不行。
面向过程就是要关注洗的方式,时间长度,拧干方式等一系列详细步骤,所以处理起来就比较麻烦
面向对象好比现代洗衣服方式:
只有四个对象:人,衣服,洗衣粉,洗衣机
人不需要关注洗衣机具体是怎么洗衣服的,是如何甩干的。
java主要研究面向对象
面向对象关注的是对象,用类描述这个对象
如何定义类
class是定义类的关键字,ClassName为类的名字,{}中为类的主体。
// 创建类
class ClassName{
public String name; // 字段(属性) 或者 成员变量 定义在类当中,方法外部的变量
// 行为 或者 成员方法
public void sleep(){
}
}
类中具体成员变量分为两种
class Person{
//普通成员变量
public String name;
//普通成员方法
public void sleep(){
}
//静态成员变量
public static int count;
//静态成员方法
public static void Sum(){
}
}
注意事项:
类名注意采用大驼峰定义
成员前写法统一为public(访问限定修饰符)
此处写的方法不带 static 关键字**
一般一个文件当中只定义一个类
main方法所在的类一般要使用public修饰
public修饰的类必须要和文件名相同
不要轻易去修改public修饰的类的名称,因为一个java文件有多个类就改不了
如何更改类名
类的实例化
class PetDog{
public String name;
public String eat;
public void eat(){
System.out.println(name+"吃剩饭");
}
}
public class Test {
public static void main(String[] args) {
//实例化 =》实例化出来就是一个真正的实体
//通过new关键字可以实例化多个对象
PetDog petDog =new PetDog();
petDog.name="花花";
petDog.eat();
PetDog petDog2 =new PetDog();
petDog2.name="耀耀";
petDog2.eat();
}
}
注意事项
- new 关键字用于创建一个对象的实例。
- 使用 . 来访问对象中的属性和方法。
- 同一个类可以创建多个实例。
this引用
什么是this引用
this引用指向当前对象,在成员方法中所有成员变量的操作,都是通过该 引用去访问。
重要性:定义成员方法时,务必加上this.
public class Date {
//成员变量
public int year;
public int moth;
public int day;
//成员方法
public void setDay(int y,int m,int d){
//this的作用是当调用很多方法时,变量不知道给谁赋值,用this.修饰变量,就表明谁调用这个方法this就给谁赋值
this.year=y;
this.moth=m;
this.day=d;
}
//打印方法
public void print(){
System.out.println("year:"+year+" "+"moth"+" "+moth+" "+"day:"+day);
}
public static void main(String[] args) {
//实例化对象
Date date=new Date();
date.setDay(2023,10,22);
date.print();
Date date1=new Date();
date.setDay(2003,06,05);
date.print();
}
}
this引用的特性
- this的类型:对应类类型引用,即哪个对象调用就是哪个对象的引用类型
- this只能在"成员方法"中使用
- 在"成员方法"中,this只能引用当前对象,不能再引用其他对象
- this是“成员方法”第一个隐藏的参数,编译器会自动传递,在成员方法执行时,编译器会负责将调用成员方法对象的引用传递给该成员方法,this负责来接收
总结
类和对象+this引用便是今天学习的内容,这几天复习的知识多,怕是要忘了,恨不得一天48个小时,加上学校的事情好多,明早抽到了我上台讲ppt,下午古代文学史抽背,放学普通话考试,明天又是高度紧张的一天,鸭梨大啊鸭梨大。