Java类&对象&封装

简介: Java类&对象&封装

面向对象编程的本质:


以类的方式组织代码,以对象的组织(封装)数据。

  • 抽象
  • 三大特性
  • 封装
  • 继承
  • 多态
  • 从认识论角度考虑是现有对象后有类。对象,是具体的事物。类,是抽象的,是对对象的抽象。
  • 从代码运行角度考虑是先有类后有对象。类是对象的模板。

什么是对象的属性:


属性:对象具有的各种特征,每个对象的每个属性都拥有特定的值.

例如:

对象:人

属性:年龄,姓名,身高体重等。

什么是对象的行为


例如人可以做什么事情,人可以唱跳rap,打篮球等。

类和对象的关系


类:类是对现实生活中一类具有共同属性和行为的事物的抽象。

对象:是能够看得到摸的着的真实存在的实体。\

定义在方法以外,类以内

定义了以后整个类都可以使用

存储在堆内存

有默认的初始化值\

定义在方法内

定义了只能在该方法中使用

存储在栈内存

没有默认初始值,必须先定义赋予值才可以使用

封装:


private 关键字

权限修饰符

可以修饰成员变量和成员方法

this关键字

this修饰的变量用于指代成员变量

方法的形参如果与成员变量同名,不带this修饰的变量指的是形参,而不是成员变量

方法的形参没有与成员变量同名,不带this修饰的变量指的是成员变量

构造方法概述

构造方法是一种特殊的方法,该方法的方法名就说类名且没有返回值,但可以有参数。

有参数则为有参构造方法

无参数则为无参构造方法\

构造方法的注意事项


构造方法的创建

如果没有定义构造方法,系统将给出一个默认的无参数构造方法

如果定义了构造方法,系统将不再提供默认的构造方法

如果不写构造方法,在程序运行时会自动生成一个无参的构造方法

相关文章
|
4天前
|
Java
java代码优化:判断内聚到实体对象中和构造上下文对象传递参数
通过两个常见的java后端实例场景探讨代码优化,代码不是优化出来的,而是设计出来的,我们永远不可能有专门的时间去做代码优化,优化和设计在平时
22 15
|
2月前
|
Java 开发者
在 Java 中,一个类可以实现多个接口吗?
这是 Java 面向对象编程的一个重要特性,它提供了极大的灵活性和扩展性。
165 57
|
19天前
|
JSON Java Apache
Java基础-常用API-Object类
继承是面向对象编程的重要特性,允许从已有类派生新类。Java采用单继承机制,默认所有类继承自Object类。Object类提供了多个常用方法,如`clone()`用于复制对象,`equals()`判断对象是否相等,`hashCode()`计算哈希码,`toString()`返回对象的字符串表示,`wait()`、`notify()`和`notifyAll()`用于线程同步,`finalize()`在对象被垃圾回收时调用。掌握这些方法有助于更好地理解和使用Java中的对象行为。
|
2月前
|
存储 缓存 安全
java 中操作字符串都有哪些类,它们之间有什么区别
Java中操作字符串的类主要有String、StringBuilder和StringBuffer。String是不可变的,每次操作都会生成新对象;StringBuilder和StringBuffer都是可变的,但StringBuilder是非线程安全的,而StringBuffer是线程安全的,因此性能略低。
69 8
|
2月前
|
安全 Java
Java多线程集合类
本文介绍了Java中线程安全的问题及解决方案。通过示例代码展示了使用`CopyOnWriteArrayList`、`CopyOnWriteArraySet`和`ConcurrentHashMap`来解决多线程环境下集合操作的线程安全问题。这些类通过不同的机制确保了线程安全,提高了并发性能。
|
2月前
|
存储 Java 程序员
Java基础的灵魂——Object类方法详解(社招面试不踩坑)
本文介绍了Java中`Object`类的几个重要方法,包括`toString`、`equals`、`hashCode`、`finalize`、`clone`、`getClass`、`notify`和`wait`。这些方法是面试中的常考点,掌握它们有助于理解Java对象的行为和实现多线程编程。作者通过具体示例和应用场景,详细解析了每个方法的作用和重写技巧,帮助读者更好地应对面试和技术开发。
143 4
|
2月前
|
Java Android开发
Eclipse 创建 Java 类
Eclipse 创建 Java 类
32 0
|
Java
java学习第七天笔记-方法150-封装2方法使用
java学习第七天笔记-方法150-封装2方法使用
76 0
java学习第七天笔记-方法150-封装2方法使用
|
Java
java学习第六天笔记-方法129-综合联系-飞机票方法封装
java学习第六天笔记-方法129-综合联系-飞机票方法封装
71 0
java学习第六天笔记-方法129-综合联系-飞机票方法封装