类和对象-java

简介: 类和对象-java

一、如何定义一个类?


class ClassName {
fifield ; // 字段 ( 属性 ) 或者 成员变量
method ; // 行为 或者 成员方法
}

class为定义类的关键字,ClassName为类的名字,{}中为类的主体。


一般一个文件当中只定义一个类。


二、如何实例化一个对象?


用类类型创建对象的过程,称为类的实例化 ,在 java 中采用 new 关键字,配合类名来实例化对象。

new 关键字用于创建一个对象的实例 .

使用 . 来访问对象中的属性和方法 .

同一个类可以创建多个实例 .


public class Test {
    private boolean flg;
    public  void func() {
    }
    public static void main(String[] args) {
        Test test1 = new Test();
        test1.func();
        Test test2 = new Test();
        test2.func();
    }


三、如何访问对象中的成员


1.普通的成员变量


通过对象的引用和点号来进行访问,是属于对象的。


Test test1 = new Test();
        test1.func();

2.静态的成员变量


static修饰的成员变量,称为静态成员变量,静态成员变量最大的特性:不属于某个具体的对象,是所有对象所共享的。


通过类名和点号来进行访问,属于类的,只有一份,在方法区。

Test.func();


四、代码块


代码块主要由实例代码块静态代码块,执行顺序一般是先静态的再实例的,再执行构造方法。如果存在多个静态代码块,那么静态代码块的先后顺序由他们的定义的先后顺序决定,而且静态代码块只执行一次。


五、封装


对类内部的实现细节进行隐藏,对类外提供公开的接口。实现是通过private关键字构成的,对构造方法、成员变量和成员方法都可以进行修饰。


1667909132516.jpg


public :谁都可以访问

default: 包访问权限,什么都不写时的默认权限

private :类访问权限

protected 主要是用在继承中。


六、对象的初始化


1.可以通过构造方法进行初始化


public class Date {
public int year = 1900 ;
public int month = 1 ;
public int day = 1 ;
}
public static void main ( String [] args ) {
Date d = new Date ( 2021 , 6 , 9 );
}


2.可以就地初始化。


public class Date {
public int year = 1900 ;
public int month = 1 ;
public int day = 1 ;
}


3.默认初始化


数据类型 默认值
byte 0
char '\u0000'
short 0
int 0
long 0L
boolean false
float 0.0f
double 0.0
reference null


七、构造方法


方法名和类名是一样的,没有返回值。当构造方法执行结束,那么对象的实例化也就完成了。可以有多个构造方法,那么就构成了重载。


相关文章
|
28天前
|
安全 Java 数据建模
Java记录类:简化数据载体的新选择
Java记录类:简化数据载体的新选择
174 101
|
28天前
|
安全 Java 开发者
Java记录类:简化数据载体的新方式
Java记录类:简化数据载体的新方式
217 100
|
2月前
|
安全 IDE Java
Java记录类型(Record):简化数据载体类
Java记录类型(Record):简化数据载体类
319 120
|
10天前
|
JSON 网络协议 安全
【Java】(10)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
56 1
|
10天前
|
Java Go 开发工具
【Java】(8)正则表达式的使用与常用类分享
正则表达式定义了字符串的模式。正则表达式并不仅限于某一种语言,但是在每种语言中有细微的差别。
102 1
|
10天前
|
存储 Java 程序员
【Java】(6)全方面带你了解Java里的日期与时间内容,介绍 Calendar、GregorianCalendar、Date类
java.util 包提供了 Date 类来封装当前的日期和时间。Date 类提供两个构造函数来实例化 Date 对象。第一个构造函数使用当前日期和时间来初始化对象。Date( )第二个构造函数接收一个参数,该参数是从1970年1月1日起的毫秒数。
75 1
|
10天前
|
JSON 网络协议 安全
【Java基础】(1)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
49 1
|
16天前
|
编解码 Java 开发者
Java String类的关键方法总结
以上总结了Java `String` 类最常见和重要功能性方法。每种操作都对应着日常编程任务,并且理解每种操作如何影响及处理 `Strings` 对于任何使用 Java 的开发者来说都至关重要。
163 5
|
2月前
|
缓存 安全 Java
Java反射机制:动态操作类与对象
Java反射机制是运行时动态操作类与对象的强大工具,支持获取类信息、动态创建实例、调用方法、访问字段等。它在框架开发、依赖注入、动态代理等方面有广泛应用,但也存在性能开销和安全风险。本文详解反射核心API、实战案例及性能优化策略,助你掌握Java动态编程精髓。
|
2月前
|
存储 安全 Java
Java集合框架(一):List接口及其实现类剖析
本文深入解析Java中List集合的实现原理,涵盖ArrayList的动态数组机制、LinkedList的链表结构、Vector与Stack的线程安全性及其不推荐使用的原因,对比了不同实现的性能与适用场景,帮助开发者根据实际需求选择合适的List实现。