| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Java知识库 -> Java~类和对象(类的定义方式以及对象的实例化、static、this关键字详解,了解封装、了解private、protected、public的区别、构造方法) -> 正文阅读 |
|
[Java知识库]Java~类和对象(类的定义方式以及对象的实例化、static、this关键字详解,了解封装、了解private、protected、public的区别、构造方法) |
目录 访问限定符(private、default、protected、public)? 类的定义和实例化
类和对象是什么?类是用来对一个实体(对象)来进行描述的,主要描述实体(对象)有哪些属性、有哪些功能,类是一种自定义类型,可以用来定义变量,在Java中,用类定义出的变量即为对象。 类的定义格式在Java中定义类需要用到class关键字,具体定义格式如下:
类中包含的内容称为类的成员、属性。属性主要是用来描述类的,称为类的成员属性或成员变量。方法主要说明类的主要功能,称为类的成员方法。 注意事项:
类的实例化什么是类的实例化?
类的实例化举例:
?关键字详解static关键字
静态成员变量特性? 1.不属于某个具体对象,是类的属性,所有对象所共享的,不存储在某个对象的空间中; 2.既可以通过对象访问,也可以通过类名访问,一般推荐使用类名访问; 3.JDK7以前,HotSpot(Java虚拟机)中存储在方法区,JDK8以后,类变量存储在堆中; 4.生命周期伴随类的一生(即:随类的加载而创建,随类的销毁而销毁). 静态成员方法特性 1.不属于某个具体的对象,是类的方法; 2.可以通过对象调用,也可以通过类名.静态方法(...)调用,一般推荐使用后者; 3.静态方法没有隐藏的this引用参数,因此不能在静态方法中访问任何非静态成员变量; 4.静态方法中不能调用任何非静态方法,因为非静态方法有this参数,在静态方法中调用时无法传递this引用。 static成员变量的初始化 static成员变量的初始化分为两种:就地初始化和静态代码块初始化。 ①就地初始化
②静态代码块初始化
this关键字
this的引用特性 1.this的类型:对应类类型引用,即哪个对象调用就是哪个对象的引用类型; 2.this只能在成员方法中使用; 3.在成员方法中,this只能引用当前对象,不能引用其他对象,具有final属性. this的使用方法 1.this.成员变量(普通的成员变量,不能是静态的) 2.this.成员方法(普通的成员方法,不能是静态的) 3.this(),调用其他的构造方法,只能用在第一行。 封装
访问限定符(private、default、protected、public)?Java中主要通过类和访问权限来实现封装:类可以将数据以及封装数据的方法结合在一起,访问权限可以控制方法或字段能否直接在类外使用,Java提供了四种访问限定符:
private: 即你无法访问,只有在同一个包同一个类中可以使用; default:default权限是指什么都不写时的默认权限,在同一个包中可以访问,在其他地方不可以被访问; protected:继承访问权限; public:你可以访问,在任何地方都可以访问到. 构造方法
特性 : 1.名字必须与类名相同; 2.无返回类型; 3.创建对象时由编译器自动调用,并且在整个对象的生命周期内只调用一次; 4.构造方法可以重载; 5.如果没有显式定义,编译器会生成一份默认的构造方法,该构造方法是没有参数的; 6.构造方法中可以通过this来调用其他构造方法来简化代码,但是this语句必须是构造方法中的第一条语句; 7.构造方法在绝大多数情况下用public修饰。 举例如下:
上述代码示例采用了构造方法重载,分别创建了无参数的构造方法和带有三个参数的构造方法,运行结果如下: ? ? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 11:39:45- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |