Java之路---Day04
2019-10-18-21:35:36
面向对象
学面向对象前要先知道什么叫面向过程,了解了什么叫面向过程才容易理解面向对象
面向过程(强调步骤)
概念:当需要实现一个功能的时候,每一个具体的步骤都要亲历亲为,详细处理每一个细节的过程称为面向过程
如:把衣服脱下来==>找一个盆==>放点洗衣粉==>加点水==>浸泡==>洗衣服==>拧干==>晾晒
面向对象(强调对象)
概念:当需要实现一个功能的时候,不关系具体的步骤,而是找一个已经具有该功能的人来实现该过程.
如:把衣服脱下来==>放洗衣机里==>启动洗衣机==>晾晒
特点:面向对象思想是一种更符合我们思考习惯的思想,它可以把复杂的事情简单化,让我们从执行者变成指挥者
三大基本特征:封装、继承和多态
类
概念:是一组相关属性和行为的集合,可以看成是一类事物的模板,使用事物的属性特征和行为特征来描述该类事物
属性:事物的状态信息
行为:事物能够做什么
对象
概念:是一类事物的具体体现,对象是类的一个实例,必然具备该类事物的属性和行为
类和对象的关系
类是对一类事物的描述,是抽象的
对象是一类事物的实例,是具体的
类是对象的模板,对象是类的实体
类的定义格式
public class Person{
//成员变量(属性)
//成员方法(行为)
}
定义类
概念:就是定义类的成员,包括成员变量和成员方法
成员变量
概念:和定义变量几乎一样,只不过位置发生了变化,在类中,方法外
成员方法
概念:和定义方法几乎一样,只不过把static去掉

注意事项
1.成员变量是直接定义在类当中的,在方法外边
2.成员方法不要写static关键字
类的使用方法
通常情况下,一个类并不能直接使用,需要根据类创建一个对象, 才能使用。
1.导包:也就是指出需要使用的类,在什么位置.
import包名称.类名称;
对于和当前类属于同一个包的情况,可以省略导包语句不写。
2.创建,格式:
类名称对象名。new类名称();
Student stu = new Student();
3.使用,分为两种情况:
使用成员变量:对象名.成员变量名
使用成员方法:对象名.成员方法名(参数)
(也就是,想用谁,就用对象名点儿谁)
注意事项:
如果成员变量没有进行赋值,那么将会有一个默认值,规则和数组一样。
成员变量和局部变量的区别
1.定义的位置不一样【重点】
局部变量:在方法的内部
成员变量:在方法的外部,直接写在类当中
2.作用范围不一样【重点】
局部变量:只有方法当中才可以使用,出了方法就不能再用
成员变量:整个类全都可以通用。
3. 默认值不一样【重点】
局部变量:没有默认值,如果要想使用,必须手动进行赋值
成员变量:如果没有赋值,会有默认值,规则和数组一样
4.内存的位置不一样(了解)
局部变量,位于栈内存
成员变量:位于堆内存
5.生命周期不一样(了解)
局部变量,随着方法进栈而诞生,随着方法出栈而消失
成员变量:随着对象创建而诞生,随着对象被垃圾回收而消失
代码执行顺序


Java之路---Day04的更多相关文章
- Java之路——名词解释(一)
一.开篇 许多人在初接触Java的时候,都会被各种Java的英文缩写名词给弄得头晕脑胀.看一个技术,内容里又会有一堆其他的技术名词,看了半天不知所云.尝试去查一下这些名词的解释,除了非常学术性的解释之 ...
- Java之路——敬JAVA初学者(作者:MoMo)
作为一名大四的毕业生,大学三年过,有得有失.作为一个喜欢编程,喜欢JAVA的人,自学其实是一件美事,很有意思的事.要是能再找个女朋友一起学.嘿嘿,就不枉在大学走了一遭啊! 要离开学校了,还是想留 ...
- Java之路——环境配置与编译运行
本文大纲 一.开篇 二.JDK下载 三.JDK安装 四.环境配置 五.初识Java编译 六.Java与Javac 七.第一个Java程序 八.总结 九.参考资料 一.开篇 通过对之前Java之路的了解 ...
- Java之路 ——初识Eclipse
零.大纲 一.前言 二.获取Eclipse 三.运行Eclipse 四.创建及运行第一个Java Project 五.界面介绍 六.如何调试 七.获取插件 八.Eclipse 快捷键 九.总结 一.前 ...
- 2017-2018-1 JAVA实验站 冲刺 day04
2017-2018-1 JAVA实验站 冲刺 day04 各个成员今日完成的任务 小组成员 今日工作 完成进度 张韵琪 写博客.进行工作总结 100% 齐力锋 找背景音乐 100% 张浩林 游戏操作说 ...
- 转行自学 Java 之路的纪念册
前言: 最近在重读<小狗钱钱>,我对其中的"成功日记"概念特别深刻,偶尔也会记一记“成功日记”. 想了想人生走找到今天,阶段性“成功日记”有没有呢? 有的!几年前的一篇 ...
- 是什么让我走上Java之路?
选择方向,很多人都为根据自己的兴趣爱好和自己的能力所长而作出选择.那么是什么让我走上Java之路? 整个高三我有两门课程没有听过课,一门是数学,一门是物理.当时候物理没有听课的原因很简单,我有一本&l ...
- 我的Java之路
前言: 之前在学习python,刚开始的时候跟多数小白一样学习一些基础的知识,比如数据类型,用法,基本的语言结构,学了一段时间实在是学习不下去了,真是太TMD的无聊了,很多方法都记不住,也不知道学了这 ...
- Java之路——初识Eclipse
零.大纲 一.前言 二.获取Eclipse 三.运行Eclipse 四.创建及运行第一个Java Project 五.界面介绍 六.如何调试 七.获取插件 八.Eclipse 快捷键 九.总结 一.前 ...
随机推荐
- 《Maven实战》整理
一.maven介绍 Maven是优秀的构建工具,能够帮我们自动化构建过程,从清理.编译.测试到生成报告,再到打包和部署. Maven能帮助我们标准化构建过程.在Maven之前,十个项目可能有十种构建方 ...
- 解决vue视图不渲染
动态添加对象属性 //声明var travelMainVueObj;travelMainVueObj = new Vue({ "el" : "#portletConten ...
- Java基础 awt Font 四种字体样式
JDK :OpenJDK-11 OS :CentOS 7.6.1810 IDE :Eclipse 2019‑03 typesetting :Markdown code ...
- WPF Button LinkButton 绑定多个值 Template
效果如下: 代码如下: <Button Click="InventoryDetail_OnClick" Template="{StaticResource Inve ...
- robotframework启动ride失败,提示wxpython ImportError: DLL load failed: 找不到指定的模块
背景:按照rf的操作,安装是没有问题,就是在启动ride.py 这个文件,就有问题了,提示 wxpython ImportError: DLL load failed: 找不到指定的模块 在pytho ...
- Postgresql单表【插入】/【更新】百万数据
一.插入数据 说到插入数据,一开始就想到: insert int A values(*******************) 插入多条数据,最多想到:写成这样: insert into A value ...
- ORA-01126: 数据库必须已装载到此实例并且不在任何实例中打开
原因:修改归档模式的操作只能在 mount 状态下进行,不能处于 open 状态. SQL> alter database archivelog;alter database archivelo ...
- 多用户远程连接设置(WindowsServer2008/Win7)
一.Windows server2008 1.点击计算机--->右键属性打开系统对话框.进行如图设置. 2.在开始菜单--->运行中输入gpedit.msc打开本地组策略编辑器对话框. 3 ...
- Difference between LinkedList vs ArrayList in Java
source-url LinkedList implements it with a doubly-linked list. ArrayList implements it with a dynami ...
- Linux下安装配置rocketmq
1.安装jdk,如果系统有原来的系统自带的先删掉,因为很多库不全,自己需要到jdk官网下载包. 卸载CentOS自带的OpenJdk: [root@centos-lx /]# rpm -qa | gr ...