您的位置:首页 > 汽车 > 新车 > Java新手指南:从菜鸟到编程大师的趣味之路-类和对象

Java新手指南:从菜鸟到编程大师的趣味之路-类和对象

2024/11/17 18:45:49 来源:https://blog.csdn.net/Themberfue/article/details/140965299  浏览:    关键词:Java新手指南:从菜鸟到编程大师的趣味之路-类和对象

这里是Themberfue 

 本章主要介绍的是Java最重要的面向对象(OOP)的基础

 面向对象

        Java是一门纯面向对象的语言,在面向对象的世界里,一切皆为对象。面向对象是解决问题的一种思想,主要依靠对象之间的交互完成一件事情。用面向对象的思想来涉及程序,更符合人们对食物的认知,对于大型程序的设计、扩展以及维护都非常友好。

        面向对象和面向过程的区别

                面向过程编程是一种基于过程(函数)的编程范式,程序通过一系列函数调用实现。它强调的是过程(过程就是一组指令或步骤),数据和函数是分离的。

                面向对象编程是一种基于对象的编程范式,程序由一组对象及其交互组成。每个对象包含数据和操作数据的函数(称为方法)。

举个例子:

                面向过程的例子 => 洗衣服的步骤 => 1. 收集脏衣服 2. 按颜色和材质分类 3. 将衣服放入洗衣盆 4. 加水 5. 加入洗衣粉.........

                面向对象的例子 => 使用洗衣机 => 1. 洗衣机 2. 洗涤程序

 类定义和使用

        在Java中定义类时需要用到class关键字,具体语法如下

// 创建类
class ClassName{  field; // 字段(属性) 或者 成员变量method; // 行为 或者 成员方法
}
class WashMachine{public String brand;   // 品牌public String type;    // 型号public double weight;  // 重量public double length;  // 长public double width;  // 宽public double height;  // 高public String color;   // 颜色public void washClothes(){   // 洗衣服System.out.println("洗衣功能");}public void dryClothes(){    // 脱水System.out.println("脱水功能");}public void setTime(){       // 定时System.out.println("定时功能");}
}

        注意事项:

                1. 类名注意采用大驼峰定义

                2. 成员前写法统一为public,后面会详细解释

类的实例化

        定义了一个类,就相当于在计算机中定义了一种新的类型。用类类型创建对象的过程,称为类的实例化,在java中采用new关键字,配合类名来实例化对象。

        用上面的例子来实例化对象

public class Main {public static void main(String[] args) {WashMachine washMachine = new WashMachine();washMachine.brand = "联想";washMachine.dryClothes();}
}

注意事项

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

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

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

 this引用

        this引用指向当前对象(成员方法运行时调用该成员方法的对象),在成员方法中所有成员变量的操作,都是通过该引用去访问。只不过所有的操作对用户是透明的,即用户不需要来传递,编译器自动完成。

class Date {public int year;public int month;public int day;public void setDay(int year, int month, int day){this.year = year;this.month = month;this.day = day;}
}

        this引用的特性

                ·this的类型:对应类类型引用,即哪个对象调用就是哪个对象的引用类型

                ·this只能在"成员方法"中使用

                ·在"成员方法"中,this只能引用当前对象,不能再引用其他对象

对象的构造及初始化

        构造方法

                构造方法(也称为构造器)是一个特殊的成员方法,名字必须与类名相同,在创建对象时,由编译器自动调用,并且 在整个对象的生命周期内只调用一次。

class Date {public int year;public int month;public int day;// 构造方法:// 名字与类名相同,没有返回值类型,设置为void也不行// 一般情况下使用public修饰// 在创建对象时由编译器自动调用,并且在对象的生命周期内只调用一次public Date(int year, int month, int day) {this.year = year;this.month = month;this.day = day;}
}

构造方法的特性:

        ·名字必须与类名相同

        ·没有返回值类型,设置为void也不行

        ·创建对象时由编译器自动调用,并且在对象的生命周期内只调用一次(相当于人的出生,每个人只能出生一次)

        ·构造方法可以重载(用户根据自己的需求提供不同参数的构造方法)

        ·如果用户没有显式定义,编译器会生成一份默认的构造方法,生成的默认构造方法一定是无参的。

构造方法中,可以通过this调用其他构造方法来简化代码 

class Date {public int year;public int month;public int day;// 无参构造方法--内部给各个成员赋值初始值,该部分功能与三个参数的构造方法重复// 此处可以在无参构造方法中通过this调用带有三个参数的构造方法// 但是this(1900,1,1);必须是构造方法中第一条语句public Date(){//System.out.println(year);   注释取消掉,编译会失败this(1900, 1, 1);}public Date(int year, int month, int day) {this.year = year;this.month = month;this.day = day;}
}

 封装

        面向对象程序三大特性:封装、继承、多态。而类和对象阶段,主要研究的就是封装特性。何为封装呢?简单来说 就是套壳屏蔽细节。

        访问修饰限定符

                Java中主要通过类和访问权限来实现封装:类可以将数据以及封装数据的方法结合在一起,更符合人类对事物的认 知,而访问权限用来控制方法或者字段能否直接在类外使用。Java中提供了四种访问限定符:

No范围privatedefaultprotectedpublic
1同一包中的同一类
2同一包中的不同类
3不同包的子类
4不同包的非子类

多说不易必自毙,剩下的自己去悟吧~~~

 static

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

        这里我直接说特性,剩下的还是自己去悟吧😘😘😘

不属于某个具体的对象,是类方法

可以通过对象调用,也可以通过类名.静态方法名(...)方式调用,更推荐使用后者

不能在静态方法中访问任何非静态成员变量

 今天的讲解就到这里,说实话,我这教程写的一般,正经人一般也不会看到这里吧😁👌

 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com