一、类
1.类的属性      2.类的方法     3.类的分类     4.类的创建     5.扩展:成员变量和局部变量
二、对象
1.对象的创建      2.对象的使用

一、类

类就是一类事物的抽象概念,它不指代某一个具体的事物,而是将这一类事物所具有的特点进行抽取,然后形成一个带有范围指向性的概念。

1.类的属性(名词)

比如:狗这个类的属性有,颜色、身高、性格、年龄等

2.类的方法(动词)

比如:狗这个类的方法有:跑、吃、摇尾巴、叫等

(1)修饰符
修饰符 代码
公有的/私有的 public/private
静态的 static

没有static修饰的默认为非静态(实例),静态属于类,而实例属于对象。

(2)返回值
返回值 代码
无返回值 void
基本数据类型 int,double,Boolean等
引用数据类型 String,数组等

写基本、引用数据类型时,注意返回值的类型一致

(3)方法的调用

静态/实例方法调用:

公有/私有方法调用:

私有的方法只能在该类里使用
公有的方法可以在另外的类被调用

(4)参数传递

调用有多个参数的方法时,传参的顺序一致,数据类型保持一致

(5)构造方法
构造方法 说明
无参构造 jvm虚拟机在加载类时会自动创建,每个类都默认有一个无参构造
有参构造 开发人员自己去编写,它的作用是:实例化对象的同时,为对象的成员属性赋值

有参构造=无参构造+set方法

// 无参构造
public Student(){};
// 有参构造
public Student(String name,int age){this.name = name;this.age = age;
};
(6)方法的重载

同一个类中,同名不同参数的两个或以上的方法叫做方法的重载。

如果类中只有有参构造,忘记了写无参构造,类中的有参构造会覆盖无参构造
如果类中有参构造和无参构造都忘记了写,虚拟机在加载该类的时候会默认帮你生成一个无参构造。

(7)扩展:this的详解

第一种情况:
this出现在一般的方法中,因为使用方法必须要调用它,所有这里this指代的是调用该方法的对象。

public void add(int num1,int num2){this.sum = num1+num2;
}

第二种情况:
1)this出现在构造方法中,因为构造方法是用new来调用的,所以这种情况和第一种不同,这里的this指代的是该构造方法构造出的对象。

public Student(String name){this.name = name;
}

2)this出现在构造方法中,且后面跟着括号是调用该类的其他构造方法,此时被调用的其他构造方法只会执行方法内代码,并不会构造新的对象。

public Student(){this("张三");
}
public Student(String name){this.name = name;// 这里的this仍然是无参构造构造的对象。
}
(8)扩展:super的详解

作用一:访问父类的成员属性或成员方法 (在子类实例或构造方法中)
作用二:访问父类的构造方法 (在子类构造方法中)

public Student(){super(); // 访问父类的构造方法super.a = 1;// 访问父类的成员属性或成员方法
}
public void rename(String name){super.a = 1;
}

3.类的分类

分类 说明
实体类 粗略来说,就是可以找到与之对应的实体对象的类:比如:狗狗类,汽车类。学生类等
业务类 用来描述各种逻辑关系的类

实体类一般由属性(姓名,年龄等实体属性)、方法(实体能够进行的动作)和代码块构成。

4.类的创建

类一般由若干属性和若干方法组成,而两者都不是必不可少的。

public class Student{// 成员属性String name;// 方法public void read(){System.out.println("正在读书...")}
}

5.扩展:成员变量和局部变量

类的成员变量也叫全局变量,即在整个类都可以用;
用大括号里面的变量叫局部变量,只能在括号里生效。

二、对象

对象就是某一类中的具体的指代,表示的是一个实实在在的具体的事物。

由类生成对象的过程叫做实例化。

1.对象的创建

Test t1 = new Test();

2.对象的使用

(1)设置属性
t1.name = "张三";
(2)调用方法
t1.rename("李四");

小汤学编程之JAVA基础day06——面向对象(一):类与对象相关推荐

  1. 小汤学编程之JAVA基础day07——面向对象(二):封装、继承与多态

    一.封装 1.使用步骤      2.优点     3.包结构     4.访问修饰符 二.继承 1.理解      2.重写     3.final的详解     4.防止被继承的两种方法 三.多态 ...

  2. 小汤学编程之JAVA基础day08——面向对象(三):抽象类与接口

    一.抽象类 1.抽象类的由来      2.几点注意     3.语法规则 二.接口 1.定义方式      2.属性和方法 三.总结 一.抽象类 1.抽象类的由来 "用进废退", ...

  3. 小汤学编程之JAVA基础day12——异常

    一.什么是异常 1.程序错误类型     2.异常的分类     3.深入认识异常 二.异常的继承结构 三.常见的异常收集 四.虚拟机对异常的两种处理方式 1.捕获异常     2.声明和抛出异常 五 ...

  4. 小汤学编程之JAVA基础day02——数据类型、Scanner类的使用

    一.JAVA的数据类型 1.变量      2.常量     3.基本数据类型     4.引用数据类型     5.数据类型转换 二.Scanner类的使用 1.作用      2.引入     3 ...

  5. 小汤学编程之JAVA基础day14——xml和反射

    一.xml 1.简介     2.特点     3.使用步骤 二.Reflect反射 1.概念     2.理解Class类     3.反射的功能     4.两个案例 一.xml 1.简介 xml ...

  6. 小汤学编程之JAVA基础day09——常用类(一):比较器、内部类和包装类

    一.比较器 1.内部比较器      2.外部比较器 二.内部类 1.成员内部类     2.静态内部类     3.局部内部类     4.匿名内部类 三.包装类 1.概念     2.包装类的应用 ...

  7. 小汤学编程之JAVA基础day05——数组

    一.概念 1.什么是数组      2.为什么要用到数组 二.使用方法 1.声明并分配空间      2.赋值     3.处理数据 三.数组的各种应用 1.求数组中最大/最小值      2.数组反 ...

  8. 小汤学编程之JAVA基础day04——流程结构

    一.认识流程图 二.顺序结构 三.选择结构 四.循环结构 五.扩展&代码块的概念 一.认识流程图 二.顺序结构 体现在程序进入某个方法后,从上到下没有分支的顺序执行. 三.选择结构 1.if选 ...

  9. 小汤学编程之JAVA基础day15——枚举、注解和Properties

    一.枚举 1.枚举的来由     2.枚举的作用     3.枚举的特点     4.扩展:switch里可以传入哪些类型的值 二.注解 1.作用     2.注解的种类     3.自定义注解    ...

最新文章

  1. 一.Linq to JSON是用来干什么的?
  2. LeetCode: 105. Construct Binary Tree from Preorder and Inorder Traversal
  3. java创建文件夹代码_Java创建文件夹及文件实例代码
  4. 支持向量机:Outliers
  5. SpringBoot | 自动配置原理
  6. php 函数有命名空间吗_一篇弄懂PHP命名空间及use的使用
  7. CentOS6.5启动网络
  8. 编程入门到进大厂,分享一点学习经验
  9. (转载)Python函数参数传递机制(超级详细)
  10. centos 7配置rsync源服务器
  11. 程序员笑话集锦之丈夫与妻子篇
  12. 调查了 10,975 位 Go 语言开发者,我们有了这些发现!
  13. 微信小程序API之video
  14. 力扣-606. 根据二叉树创建字符串
  15. php tpshop,TPshop是什么意思?
  16. kalilinux生成安卓木马(仅供学习使用)
  17. JAVA中下载文件名含有中文乱码一种少见的解决方案
  18. Dreamweaver CC 2017中文版
  19. 并联串联混合的电压和电流_困惑了很久的串联/并联谐振电路详解
  20. 手机礼物iPhone 5, Note II, Butterfly

热门文章

  1. zabbix邮件内容乱码与邮件内容为附件解决办法
  2. ProgressBar与Handler的整合应用
  3. websocket(二)--简单实现网页版群聊
  4. C# 根据年、月、周、星期获得日期等
  5. SharePoint 2010新特性Ribbon
  6. ICCV2021 workshop 多视角残缺点云的补全与配准
  7. 深度学习人脸识别核心技术—框架和优化目标
  8. CVPR 2020 oral:亮风台提出完全可训练的图匹配方法
  9. ICCV 2019 | 基于轻量级新架构OSNet的域适应改进ReID
  10. 网申倒计时4天 | DJI大疆秋招独家笔试攻略