面向对象类与类之间的关系

JAVA面向对象(一)–类和对象

引入:JAVA开发语言的核心为面向对象,什么是面向对象呢?

一、面向对象思想:

面向对象是一种现在最为流行的程序设计方法,几乎现在的所有应用都以面向对象为主了,最早的面向对象的概念实际上是由IBM提出的,在70年代的Smaltalk语言之中进行了应用,后来根据面向对象的设计思路,才形成C++,而由C++产生了Java这门面向对象的编程语言。

但是在面向对象设计之前,广泛采用的是面向过程,面向过程只是针对于自己来解决问题。面向过程的操作是以程序的基本功能实现为主,实现之后就完成了,也不考虑修改的可能性,面向对象,更多的是要进行子模块化的设计,每一个模块都需要单独存在,并且可以被重复利用,所以,面向对象的开发更像是一个具备标准的开发模式。

在面向对象定义之中,也规定了一些基本的特征:

  • 封装:保护内部的操作不被破坏;
  • 继承:在原本的基础之上继续进行扩充;
  • 多态:在一个指定的范围之内进行概念的转换。

对于面向对象的开发来讲也分为三个过程:

  • OOA: 面向对象分析
  • OOD: 面向对象设计
  • OOP:面向对象编程

二、类和对象概念:

1.对象:

对象 是一种个性的表示,表示一个独立的个体,每个对象拥有自己独立的属性,依靠属性来区分不同对象

世界的万物都可以看做对象,例如我们身边的对象:

JAVA笔记(六)面向对象——类和对象

2.类:

是抽象的概念集合,表示的是一个共性的产物,类之中定义的是属性和行为(方法),将我们客观事实存在的对象共同属性和行为抽取而形成的东西:

JAVA笔记(六)面向对象——类和对象

如将我们不同的车共同属性抽取我们形成轿车类;

将张浩,李明两个对象共同属性抽取形成顾客类;

3.属性:

对象具有的各种特征(每个对象的属性都拥有特定值)

每个对象的每个属性都拥有特定值

例如:张浩和李明的年龄、姓名不一样

JAVA笔记(六)面向对象——类和对象

4.方法:

对象执行的操作

例如:李明作为收银员可以执行收银,打印账单,刷卡等操作。

JAVA笔记(六)面向对象——类和对象

5.类和对象的关系:

类是对象的模板,对象是类的实例。

类只有通过对象才可以使用,而在开发之中应该先产生类,之后再产生对象。

类不能直接使用,对象是可以直接使用的。

类是抽象的概念,仅仅是模板,比如说:“人” 对象是一个你能够看得到、摸得着的具体实体

JAVA笔记(六)面向对象——类和对象

三、类和对象使用:

1.定义类(步骤):

  • 定义类名
  • 编写类的属性
  • 编写类的方法
public class 类名{    //定义属性部分(成员变量)    属性1的类型 属性1;    属性2的类型 属性2;           ...    属性n的类型 属性n;    //定义方法部分    方法1;    方法2;           ...    方法m;}

定义一个学生的类,演示代码如下:

package cn.hz;/** * 定义学生的类 * @author hz * @version 1.0 */public class Student {    public int id;        //定义属性:学生编号    public String  name;  //定义属性:学生姓名    public int age;       //定义属性:学生年龄    //定义打印学生信息的方法    public void printInfo(){        System.out.println("姓名:"+name+",年龄:"+age);   }}

2.创建对象:

类定义完成之后,肯定无法直接使用。如果要使用,必须依靠对象,那么由于类属于引用数据类型,同变量使用一样有两种方式:

方式一:先声明再实例化对象:

如:创建一个学生对象:

Student student=null;      //声明:   类名称   对象名称=null;student=new Student();     //实例化   对象名称=new 类名称();

方式二:边声明边创建对象:

如:创建一个学生对象:

Student student=new Student();   // 类名称 对象名称=new 类名称();

小结:

引用数据类型与基本数据类型最大的不同在于:引用数据类型需要内存的分配和使用。所以,关键字new的主要功能就是分配内存空间,也就是说,只要使用引用数据类型,就要使用关键字new来分配内存空间。

3.使用对象:

当一个实例化对象产生之后,可以按照如下的方式进行类的操作:

对象.属性:表示调用类之中的属性; 对象.方法():表示调用类之中的方法。

如:创建一个学生对象,并赋值学生姓名为张三,年龄为18,然后打印该同学信息,代码如下:

package cn.hz;/** * @author hz * @version 1.0 */public class StudentTest {    public static void main(String[] args) {        //创建学生对象:        Student student=new Student();        //赋值:对象.属性        student.name="zs";        student.age=18;        //打印: 对象.方法        student.printInfo();   }}

打印结果如下:

JAVA笔记(六)面向对象——类和对象

问题:赋值太麻烦,是否可以在创建的时候进行赋值?

总结:

JAVA笔记(六)面向对象——类和对象

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:dandanxi6@qq.com

(0)
上一篇 2023年 7月 25日 上午11:12
下一篇 2023年 7月 25日 上午11:18

相关推荐

  • 163邮箱怎么注册?163邮箱怎么收费呢

    163邮箱怎么注册?163邮箱怎么收费?TOM163邮箱是支持线上注册的,所以很多企业喜欢用VIP邮箱,因为操作上便利,性价比高,接下给大家介绍下163邮箱收费套餐标准以及注册流程…

    2023年 6月 11日
  • 如何通过百度网盘赚钱

    #有什么挣钱的路子推荐吗# 百度网盘是百度旗下的免费云储存空间,可以储存图片、视频文件等重要内容。 一般用户都是储存一些平日里给孩子家人拍的照片视频。工作上面,职场用户大多数储存一…

    2023年 2月 27日
  • 2020抖音十大神曲有哪些(抖音神曲2022抖音流行歌曲音频)

    抖音十大神曲2021排名已经公布了,都是今年最热门的抖音歌曲,在各大视频中都能听到对应的BGM配乐。接下来小编就为大家带来抖音十大神曲2021,快来看下抖音最新十大神曲歌曲歌名分享…

    2023年 3月 3日
  • 会计小白怎样迅速学会上岗(直播中控小白怎么入行)

    目前自媒体很火热,只要你随便翻看一下手机,就能轻轻松松搜索到很多的视频或者是直播画面。那么就有很多人问我,我也想加入直播大军的行列,但是我是个小白,什么都不会,怎么办呢?没关系,直…

    互联网 2023年 3月 4日
  • 易企秀可以建立多少个h5,易企秀怎么做h5

    拓扑社3月30日报道 (文:窦悦怡) 据统计,2013年全球将有10亿手机浏览器支持HTML5,同时HTML Web开发者数量将达到200万。毫无疑问,HTML5将成为未来5-10…

    2023年 1月 3日
  • 淘口令怎么生成短链接

    淘口令一般都是链接+文字,很多时候链接都比较长,想要发出去实在不容易,今天缩我小编写了一篇淘口令生成短链接的教程,顺带把免费工具也放出来一起分享。 免费工具:缩我短链接 准备材料:…

    2023年 9月 9日
  • 微信公众号投稿邮箱在哪里(怎么给公众号投稿具体操作)

    昨天出了一期征稿合集15个靠谱的公众号,让我万万没想到的是,这篇文章有将近4千的阅读量,非常感谢每一个支持我的人。 看到评论区,有很多人对写作投稿感兴趣,但还是对投稿有很多疑惑,不…

    2023年 2月 24日
  • 在感情中,怎样提分手才能让对方不伤心呢

    在感情中,提分手可能会对对方造成一定的伤害和痛苦,但是通过以下一些方法,可以尽可能地减轻对方的伤心程度: 诚实坦率:在提分手时,要诚实地告诉对方原因,不要使用模糊或含糊的语言,让对…

    互联网 2023年 7月 27日
  • c盘被格式化后d盘资料丢了怎么办

    电脑c盘格式化存储数据会丢失吗?答案是会造成丢失的,如果已经格式化了,又想找回丢失的数据,前提是不要向C盘写入文件,可以尝试使用数据恢复软件对其进行数据恢复。但是格式化会清除C盘里…

    2023年 9月 4日
  • 新qq号怎么设置密码,新QQ号码设置密保问题方法教程

    相信不少朋友都有QQ被盗的经历,被盗后Q币Q点被消费,辛苦打的游戏装备也被没了….却只能“自认倒霉”。 正所谓不怕一万,只怕万一,为了防止被盗号,必须要做好保护措施!今…

    2023年 4月 13日