Java类和对象关系解析:创建类与实例化对象的完整指南

java总结1

Java类和对象关系解析:创建类与实例化对象的完整指南

一、类和对象的关系解析

类,即现实中的类型

对象,即现实中的实体

类拥有所有符合该类对象的特征,对象是通过类实例化而来

如何创建类呢?如何创建对象呢?又如何调用属性和方法呢? 首先是创建类。

类在创建前,要先总结获得该类的属性和方法,具体格式是:

修饰符 class 类名{

类名的取名需要符合规范,要做到见名知意,不能带有非法字符,也不能带有关键字。

2.创建对象

对象由类的构造方法,实例化而来

例如:有一个类Student,那么对象的实例过程:

public class Student{

String name;

公共静态的 void 主方法(字符串数组参数 args){

创建了一个对象,即 Student stu = new Student();

3.调用属性和方法

属性和方法有两种

被 static 修饰的方法是静态方法,被 static 修饰的属性是静态属性,也可以说是类属性、类方法

没有static 修饰的则为实例属性、实例方法

实例属性和方法不能引用静态属性和方法,但是反过来是可以的。

类和实例都可以通过"."符号来调用属性和方法

类名.属性名(或方法名)

以下是改写后的句子:语言风格保持原文风格,去掉最前面的序号,将长句拆分成多个小分句,分句越短越好,比如:String 张三 = Student.name;

当通过类和实例来访问类变量时,实际上所访问的是在计算机内存的同一个地址上的变量。

三、 构造方法与一般方法的区别 1.共同点

构造方法和一般方法得方法名都必须合乎取名规则

2.不同点

1)构造方法必须与类名一致,一般方法没有这个限制

2)构造方法不能有返回值,一般方法必须有返回值

如果类中未定义构造方法,那么就会自动生成一个构造方法。这个构造方法没有参数,并且没有方法体。

四、方法重载与重写的区别 1.方法重载:

方法重载指的是在同一个类当中,要保证方法名是相同的,并且方法的参数类型或者参数顺序存在不一样的情况。

2.方法重写:

方法重写是指,在继承的过程中,子类重写与父类同名的方法,

3.区别:

一个是在同一个类中,一个是在继承关系的子类中重写父类方法

五、解析面向对象的三大特征 1.封装

封装意味着,利用修饰符对类中的数据或方法进行封装处理。这样做的目的是只提供相应的方法以供访问,通过这种方式能够提升安全性。

2.继承

一个类 A 通过关键字 extends 去继承另一个类 B ,其中 A 被称作子类、基类,而 B 被称作父类、超类

例如:public class B{

String name;

public class A extends B{}

此时,类 A 具备了类 B 的所有属性与方法,并且能够通过关键字 super 来调用方法。

这里必须要讲一下继承过程中,代码的运行顺序。

在 A 中实例化一个对象时,代码的运行顺序通常是从最顶层开始,然后沿着继承关系一层一层向下进行。

如果子类重写了父类的方法,就会覆盖父类的方法,展现的是子类方法的特征。

3.多态

多态,多种状态

多态分为静态对态和动态多态

静态多态:在同一个类中,对于重载方法的使用,有多种状态

在继承的过程中,子类会重写父类的方法。在这种情况下,实例子类对象与父类对象会呈现出不同的状态。

JAVA中的类型转换有两种:自动类型转换、强制类型转换

自动类型转换是指子类可以自动转换为父类,例如:

例如:public class B{

String name;

void c(){

System.out.println(“类B的方法”);

public class A extends B{

void c(){

System.out.println(“类B的方法”);

公共静态 void 主函数(字符串数组 args){

B a = new B();

B a1 = new A();

A a2 = new A();

在上述例子里,a 的声明类型是 B,a1 的声明类型也是 B,所以 B 是它们在编译过程中的某种标识;a3 的声明类型是 A,所以 A 是它在编译过程中的某种标识。

如果a1调用了B中的方法那么编译过程会出错。

总结:一个对象在进行 new 操作时属于什么类型,其本质就为该类型。

可以自动向上转型,但是向下转型必须通过强制类型转型。

如 A a3 =(A) a1;

你可能想看:
« 上一篇
下一篇 »

相关推荐

java中什么是冒泡,冒泡算法

2026年09月06日

27阅读

java中冒号,java双冒号

2026年09月06日

26阅读

java中的->,java中的是什么意思

2026年09月06日

24阅读

java中的super用法,Java中super的说明

2026年09月06日

28阅读

java中反射的应用,java中反射的应用场景

2026年09月06日

25阅读

java中开关的定义,Java关键字有哪些

2026年09月06日

26阅读