类和对象的认识

本文深入解析类与对象概念,讲解类的实例化、成员结构(包括字段和方法)、封装与getter/setter,探讨构造方法、this关键字,以及代码块和toString的使用。涵盖静态关键字、匿名对象,适合初学者和进阶者阅读。
摘要由CSDN通过智能技术生成

目录

一,简要概述

1,类与对象是什么

2,面向对象编程的核心:

二,类和类的实例化

1,声明类的基本语法:

2,实例化对象

三,类的成员

1,字段

四,引用需要注意的问题

五,static关键字

1,修饰属性

2,修饰方法

六,封装

1,封装是什么?

2,getter或setter方法

3,封装的意义

七,构造方法

八,this关键字

1,this的用法:

(1)调用属性:

 (2)调用方法:

 (3)调用构造方法:

九,代码块

1,分类:

2,代码块的出现,只是为了在合适的时候处理有些数据

3,代码块的执行顺序:

十,toString方法

十一,匿名对象


一,简要概述

1,类与对象是什么

类就是一类对象的统称。对象就是这一类具体化的一个实例

2,面向对象编程的核心:

1,找对象;2,创建对象;3,使用对象

二,类和类的实例化

对象由类产生,而由类产生对象就是实例化过程,一个类可以产生多个对象

Java使用关键字class来声明类

1,声明类的基本语法:

2,实例化对象

使用 . 来访问对象中的属性和方法.(引用.属性/引用.方法)

,类的成员

类的成员可以包含以下:字段、方法、代码块、内部类和接口等

1,字段

*字段也称为属性或成员变量

*定义在类的内部,方法的外部

**(引用.属性

*默认值规则:

*成员变量如果没有初始化会被赋予默认值;而局部变量如果没有初始化就会报错

*null不指向任何对象

*字段可以就地初始化但不建议

2,方法

**(引用.方法

 

,引用需要注意的问题

五,static关键字

1,修饰属性

成员变量被static所修饰就分为静态成员变量和普通成员变量

2,修饰方法

普通成员方法当中不能定义一个静态的成员变量

如果在方法内部它是一个局部变量,局部变量的作用域在方法内部,如果被static修饰的,就要全局可见,矛盾了

普通方法内部可以调用静态方法

因为静态方法不依赖于对象,相反,在静态方法的内部不可以调用普通的成员方法

要想在静态方法内调用普通的成员方法必须通过引用

六,封装

封装,继承,多态是面向对象思想的主要特征,不是Java独有

1,封装是什么?

语法层次上:字段和方法都被private修饰,此时就说把这个字段或者这个方法进行了封装

public,private都叫做访问权限修饰限定符

private修饰的字段和方法只能在当前类当中使用,不能在类外使用

如果需要在类外使用private修饰的字段或方法,则需要用gettersetter方法

2gettersetter方法

getName 即为 getter 方法, 表示获取这个成员的值. setName 即为 setter 方法, 表示设置这个成员的值

注意:当set方法的形参名字和类中的成员属性的名字一样的时候,如果不使用this, 相当于自赋值. this 表示当前实例对象的引用.

3,封装的意义

安全、降低了对类的使用成本

七,构造方法

构造方法是一种特殊方法, 使用关键字new实例化新对象时会被自动调用, 用于完成初始化操作.

实例化过程

1,为对象分配内存空间 ;

2,调用对象的构造方法

构造方法无返回值,方法名称和类名一样

如果类中没有提供任何的构造函数,那么编译器会默认生成一个不带有参数的构造函数

若类中定义了构造方法,则默认的无参构造将不再生成.

构造方法支持重载. 规则和普通方法的重载一致

构造方法无返回值,并不是void,而是根本没有返回值这个选项

八,this关键字

1this的用法:

(1)调用属性:

 (2)调用方法:

 (3)调用构造方法:

   this()只能放在构造方法的第一行当中

九,代码块

1,分类:

(1)本地代码块

      方法内部定义的代码块

(2)实例代码块(构造代码块)

      类的内部,方法的外部,一般用于初始化实例成员变量

(3)静态代码块

        一般用于初始化静态成员属性

 静态代码块不依赖对象,不能用this

(4)同步代码块

2,代码块的出现,只是为了在合适的时候处理有些数据

3,代码块的执行顺序:

静态代码块----实例代码块----构造方法

静态代码块只能被执行一次!

如果都是静态的,和定义顺序有关

十,toString方法

用自己的toString,鼠标右键---Generate---toString

十一,匿名对象

调用匿名对象操作:new Student().getName(),sout

调用匿名对象或方法每次都需要新new一个对象

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值