【Java语言基础】面向对象
发布日期:2021-06-30 21:44:52
浏览次数:3
分类:技术文章
本文共 2497 字,大约阅读时间需要 8 分钟。
文章目录
【Java语言基础】面向对象
Java语言是面向对象的编程语言
对象
对象:是构成系统的最基本的单位
- 属性:描述对象的静态特征(成员变量)
- 行为:描述对象的动态特征(成员方法和构造方法)
类是模型,对象是实例;类是抽象的,对象是具体的。类是建筑图纸,对象是某个大楼。
定义类的简单语法格式
[修饰符] class 类名{ 成员变量来描述静态的属性,一般成员变量不初始化 成员方法来描述动态的行为 构造方法:b默认构造方法就是一个空的方法体,不写也存在-->类名(){ }}
[修饰符]可以是:[public公共类][abstract抽象类 | final最终类]默认为friendly只能被本包使用,成员变量增加private(只有自己的类可以用
例:
声明一个类可以计算矩形的面积与周长。public class Test { public static void main(String[] args){ //调用 Rectangle这个类 Rectangle c1 = new Rectangle(5,5); System.out.println("周长是:" + c1.zc() + ",面积是:" + c1.mj()); }}// Rectangle为计算面积周长的类class Rectangle{ //成员变量为Long与Wide double Long; double Wide; //成员方法给成员变量赋值 Rectangle(double a,double b){ Long = a; Wide = b; } //计算周长的公式,double代表返回值为double类型,返回什么样的数据类型,就写什么数据类型,若无返回值则为void double zc() { return 2 * (Long + Wide); } //与周长同理 double mj(){ return Long * Wide; }}
重 要 : \color{#FF0000}{重要:} 重要:
构造方法和成员方法的区别:构造方法是一种特殊的成员方法:1.方法名和类名相同 2.自动调用的 3.没有返回值类型调用方法
类名 名字 = new 类名([]);名字.成员变量....
类也是一种数据类型,是一种引用数据类型,括号里看看有没有需要参数
构造方法可以加多个形参,叫做构造方法的重载,如果显示定义了带参数的构造方法,系统就不会再给默认的构造方法 用构造方法构造对象时,构造方法里的成员变量就是该对象的成员变量
定义成员变量
[修饰符] 类型 成员变量名 [= 初始值];
定义成员方法
[修饰符] 返回值类型 方法名([形式参数表]){ 方法体;}
定义构造方法
[修饰符(一般加public)] 类名([形参列表]){ //构造方法的方法体 }
[修饰符]可以是:[public公共类][abstract抽象类 | final最终类]默认为friendly只能被本包使用,成员变量增加private(只有自己的类可以用
面向对象三大特点
封装
把新创建的类里面的成员变量加private修饰符,设置仅为本类可看
注:成员方法,可以访问任何权限的成员变量使用public [void或者返回值类型] 方法名([数据类型 形参名]){}修改(局部变量实参的值赋值给成员变量) 或者调用(return操作后的返回值或其他,如果不进行修改赋值,则会变成数据类型的默认值)
例:
输入当前年月日,并输出class Date{ private int year,month,day; public Date(){ //(2)调用本类已定义的其他构造方法 this(2020,4,2);//不能写成Date(2020,4,2) } public Date getThis(){ //(3)返回对象本身, return this; } //拷贝构造方法,由已经存在的对象创建新对象,使用的时候传递对象名字传递过去就行了 public Date(Date oday){ this(oday.year,oday.month,oday.day); } //调用toString方法,使用的时候直接调用即可,和toString效果一样 public String fun(){ retutn this.toString; } public Date(int year,int month,int day){ //(1)this代表这个对象本身,实例化哪个对象时this就代表哪个对象本身 this.year = year; this.month = month; this.day = day; } public String toString(){ //this在这里可以省略 return year + "-" + month + "-" + day; }}
其他类无法访问本成员变量,使之更加私密
this的用法
- 若成员变量与形参相同时,成员变量前可以加上this,避免传不进去值,this代表这个对象本身,实例化哪个对象时this就代表哪个对象本身
- 如果想在一个构造方法里面调用其他已被定义的构造方法。需要使用this(实参);(注意:调用的时候,this必须放到第一个语句)
- 返回对象本身,把一个对象的值,给另外一个对象
转载地址:https://lolly1023.blog.csdn.net/article/details/105226633 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
第一次来,支持一个
[***.219.124.196]2024年04月22日 04时02分51秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Python实现决策树 Desision Tree & 可视化
2019-04-30
决策树 Decision tree
2019-04-30
nominal和ordinal & 数据处理中四种基本数据类型
2019-04-30
Grid SearchCV(网格搜索)& Python实现
2019-04-30
单目深度估计 monodepth2模型 代码
2019-04-30
位图索引Bitmap indexes
2019-04-30
YOLO算法(二)—— Yolov2 & yolo9000
2019-04-30
Python的__future__模块
2019-04-30
计算机视觉中的cost-volume的概念具体指什么(代价体积)
2019-04-30
启发函数heuristic 与 A*
2019-04-30
Image Pyramid(图像金字塔)
2019-04-30
Oracle 作业记录
2019-04-30
putty连接AWS配置(multimedia project)
2019-04-30
Hourglass Network 沙漏网络 (pose estimation姿态估计)
2019-04-30