小白学Java笔记:类和对象

目录

面向对象

面向对象编写步骤:

1.编写类

2.编写属性(成员变量、字段field)

3.编写方法(暂时编写为public,不加static)

4.编写Test测试类

创建对象

构造方法(无参构造方法、带参构造方法)

引用数据类型变量

对引用数据类型赋值

this关键字


面向对象

虚拟世界“模拟”现实生活,必须保证模拟一致
面向过程:按照顺序逐步完成
:对同一类事物的抽象的描述,不是具体的
对象:万物皆对象,也就是具体的实例
类与对象的关系:抽象与具体的关系
属性:描述对象的特征
方法:对象所做的事情或对象实现的功能,也称为行为
将多个对象找到相同的属性和相同的方法组合在一起形成类

面向对象编写步骤:


1.编写类


2.编写属性(成员变量、字段field)


语法格式:[修饰符] 数据类型 属性名称 [= 值];String name;
属性名也是标识符,编写单词,并且使用驼峰命名法
属性声明时没有赋值会有默认值,数据类型不同默认值不同
整数类型:0        浮点类型:0.0    字符类型:\u0000        布尔类型:false        所有引用类型:null


3.编写方法(暂时编写为public,不加static)

4.编写Test测试类


创建对象

语法格式:类名 对象名 = new 类名();
一个类可以创建任意多个对象,在堆空间开辟空间存储对象,自动分配内存地址,对象名存地址
访问对象中属性的语法格式:对象名.属性名
访问对象中方法的语法格式:对象名.方法名称([参数列表]);

构造方法(无参构造方法、带参构造方法)


构造方法是一个特殊的方法,名字必须与类名一致,必须没有返回值类型,并且不编写void
作用:实现对属性赋值
语法格式:
public 类名([参数列表]){
完成对属性赋值
}
快捷键Alt + Insert---->Constructor
当创建对象时会自动找相匹配的构造方法执行,不匹配则编译错误
没有编写构造方法时系统默认提供无参隐式构造方法,如果编写构造方法,系统不会提供默认无参的构造方法
构造方法重载:使用更灵活

引用数据类型变量

在内存中存放地址(引用)
包括类:系统提供的类:String、System、Scanner......
用户自定义的类:Car、Grade、Student、Cat
以及其他......

对引用数据类型赋值


第一种方式:将对象的内存地址赋给对象名。比如:c = new Cat();
第二种方式:将null赋给对象名。比如:c = null;
当对象名中存放null时,也就是存放的不是地址,没有指向某个对象,就不能访问对象中的属性或方法,否则出现空指针异常
空指针异常:java.lang.NullPointerException
访问对象中的属性或方法之前必须保证对象名中存放的是对象的地址

当某个对象不再使用时,即没有对象名指向,就变成垃圾自动回收(GC机制)
一个对象中的属性可以是用户自定义的数据类型(自定义类作为数据类型)

this关键字


this代表当前这个对象,也就是说当前调用这个方法的对象名
用this关键字可以访问本类中的实例变量、实例方法以及其他构造方法
实例变量:也就是对象的变量,也就是属性(成员变量、字段),前边没有static关键字修饰
静态变量:也就是累的变量,也就是属性(成员变量、字段),前边使用static关键字修饰
当创建对象时,实例变量会在堆内存的对象中存放,因此也叫对象的变量
局部变量没有与实例变量同名时,可以在本类(当前类)中直接使用实例变量,默认有this.,同名时访问实例变量必须加this.
实例方法:也就是对象的方法,前边没有static关键字
静态方法:也就是类的方法,前边使用static关键字
实例方法之间可以相互调用,默认前面添加this.
调用本类中的构造方法,则使用this(),小括号中没有内容,则执行无参构造方法,有内容则执行带参构造方法
当使用this关键字调用本类的构造方法时,必须编写在构造方法中,并且位于第一条语句,不能自己调用自己(递归调用),出现没有意义的死循环

基于bert实现关系三元组抽取python源码+数据集+项目说明.zip基于bert实现关系三元组抽取python源码+数据集+项目说明.zip基于bert实现关系三元组抽取python源码+数据集+项目说明.zip基于bert实现关系三元组抽取python源码+数据集+项目说明.zip基于bert实现关系三元组抽取python源码+数据集+项目说明.zip 个人大四的毕业设计、课程设计、作业、经导师指导并认可通过的高分设计项目,评审平均分达96.5分。主要针对计算机相关专业的正在做毕设的生和需要项目实战练习的习者,也可作为课程设计、期末大作业。 [资源说明] 不懂运行,下载完可以私聊问,可远程教 该资源内项目源码是个人的毕设或者课设、作业,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96.5分,放心下载使用! 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校生、老师或者企业员工下载习,也适合小白习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),供习参考。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值