JAVA11_03学习总结(面向对象!)
今日内容
1.基本数据类型和引用数据类型作为形式参数的区别
面试题
基本数据类型和引用数据类型作为形式参数的区别和特例基本数据类型形式参数的改变不影响实际参数引用数据类型形式参数的改变影响实际参数特例String 是引用类型,但是它改变形式参数,实际参数也不受到影响---和基本数据类型一样
class arryTest1{public static void main(String[] args){int a = 10 ;int b = 20 ;System.out.println("当前实际参数的值a:"+a);System.out.println("当前实际参数的值b:"+b);String c = "hellow" ;System.out.println("当前实际参数的值String:"+c);System.out.println();//在方法操作之后实际参数的值functionDemo1(a,b);//值有没有发生改变?---->没有System.out.println("a:"+a+"b:"+b);//在方法操作之后实际参数的值functionDemo2(c);//值有没有发生改变?---->没有System.out.println("c:"+c);}public static void functionDemo1(int a, int b){a = 30 ;b = 30 ;}public static void functionDemo2(String c){c = "world" ;}
}
2.面向对象
2.1面向对象思想特点
面向对象思想特点1)更符合实际生活中的思维--->将实际生活中的东西计算机化,抽象化的东西具象化2)复杂的东西简单化--->将复杂的,冗余的--->变成可被调用简洁的3)思考的起点发生了改变--->从执行者,变成了指挥的人结构层次清晰的体现 现实生活的例子我需要炒菜面向过程买菜-->洗菜-->切菜-->炒菜-->装盘-->吃过程繁琐且容错率小面向对象有个对象--->吃省去所有麻烦,一步到位并且思路清晰!
2.2面向对象的设计理念
面向对象的设计理念不断地创建对象不断地适用对象不断的指挥对象
2.3面向对象的三大特征
面向对象的三大特征封装继承多态
2.4类与对象
什么是类类是Java语言中最基本的单元类---是实际生活中,有着同一类型,特征,属性元素的集合!类与现实世界的东西一一对应
什么是对象对象描述现实世界的具体事物--->类概括了世界相同的元素--->具体到每一个呢?--->学生是一个大的集合--->姓名,年龄...--->具体到一个学生的姓名,年龄...描述具体事物--->学生--姓名-->张三--年龄-->18...
类与对象二者相辅相成,不可分割创建类对象的格式类名 对象名 = new 类名() ;对类里面的成员变量进行复制对象名.成员变量名 = 值 ;---根据成员变量的数据类型赋值调用类以及里面的属性,方法对象名.方法名() ; 注意事项写类中被调用方法时,去掉static(静态)一般类中方法被称为非静态的!
/*定义一个现实世界的学生这个大的集体的类学生---姓名---年龄---性别---学号...根据实际需求来定义一个类--->来存放这些学生的属性*/
public class student {//定义成员变量,起名字见名知意String name ;//姓名int age ;//年龄String sex ;//性别int studentId ;//学号//定义方法public void study(String className){System.out.println(name+"正在学习"+className);}public void studentMesage(){System.out.println(name+"今年"+age+"岁,"+"是个"+sex+"生,"+"学号"+studentId);}}
/*主类---测试给jvm一个运行口*/
public class studentTest {public static void main(String[] args){//先将类与对象结合起来//类名 对象名 = new 类名() ;student st = new student() ;//给类中的成员变量赋值//对象名.成员变量名 = 值 ;st.name = "钟离" ;st.age = 500 ;st.sex = "男" ;st.studentId = 100773429 ;//调用类中的方法//对象名.方法名() ;st.studentMesage();//当调用需要输入的值时,根据方法中数据类型输入st.study("高等元素论!");}
}
2.5成员变量和局部变量
局部变量在方法中定义或在方法上声明的变量 成员变量在类中且方法外定义的变量
面试题
成员变量和局部变量的区别1)书写位置的区别局部变量在方法定义中或者在方法上声明的变量成员变量在类中且在方法外定义的变量2)内存位置的区别局部变量是方法定义的或声明的变量,所以是栈内存!成员变量在类中方法外定义,通过new对象被调用或赋值,所以是堆内存!3)存在周期的区别局部变量伴随着方法的结束立即释放(消失)成员变量随着访问方法完毕后,等待被GC垃圾回收器标记,空闲时回收,不会立即释放(消失)4)初始化值区别局部变量必须赋初始值,不然报错!成员变量和对象有关,存在系统默认初始化
JAVA11_03学习总结(面向对象!)相关推荐
- Python学习之面向对象编程
Python学习目录 在Mac下使用Python3 Python学习之数据类型 Python学习之函数 Python学习之高级特性 Python学习之函数式编程 Python学习之模块 Python学 ...
- 十四、理解nn.module方法——学习python面向对象编程(一)
起因 在(十二)中说到pytorch中创建神经网络的两种方法:一个是Sequential类(这也是一种继承父类属性和方法并可对其方法重构的子类),另一个是自己编写代码,继承nn.module类,对其内 ...
- Java进阶学习-7 面向对象程序设计原则
title: Java进阶学习-7 面向对象程序设计原则 date: 2020-02-02 18:02:27 tags: 以一个城堡游戏为例子谈面向对象程序设计原则 Game.java package ...
- 深圳Java学习:面向对象【重点知识】
深圳Java学习:面向对象[重点知识] 在Java的学习中,面向对象应该是Java技术的重中之重,虽然在生活中没有对象可以面对,但在技术中还是要一直接触面对对象,而且不可避免.今天千锋小编对面向对象来 ...
- Python学习之面向对象高级编程
Python学习目录 1. 在Mac下使用Python3 2. Python学习之数据类型 3. Python学习之函数 4. Python学习之高级特性 5. Python学习之函数式编程 6. P ...
- Java学习笔记——面向对象
声明:文章首发于我的个人微信公众号Java编程社区,查看更多文章与学习资源请移步我的公众号Java编程社区 万物皆对象 学习Java,我们都听过这句话:万物皆对象.那么什么是对象? 我们先来看看人类是 ...
- 【Python】Python语言学习:面向对象编程,类和对象,封装、继承和多态
这一周Python语言学习,记录如下. 01 面向对象编OOP 1.1 为什么学习和应用OOP? 1 OOP适合更加复杂的需求分析和项目开发. 2 OOP具有更强大的封装能力. 3 OOP相比于面向过 ...
- Python学习之面向对象
1. 前言 上次学习了Python的基本语法,这次学面向对象,本博客主要介绍Python的面向对象和一些常用的类.本博客不太适合小白,适合有一定的编程基础的童鞋. 学习资料主要来自两处: B站Pyth ...
- Python基础学习,面向对象的基本概念
Python使用类(class)和对象(object),进行面向对象(object-oriented programming,简称OOP)的编程. 面向对象的最主要目的是提高程序的重复使用性.我们这么 ...
最新文章
- [WARNING] unable to add QUERY_STRING=XXXX to uwsgi packet, consider increasing buffer size
- PCL点云特征描述与提取(4)
- 2019腾讯广告算法大赛-冠军之路
- UILabel的自适应宽高
- mysql数据库的维护_MySQL数据库维护
- mysql移动文件后打不开_Windows端MySQL data目录迁移(貌似会启动不了)
- 基于GaussDB(DWS)的全文检索特性,了解一下?
- 僵尸矩阵 · Zombie in Matrix
- PBR理论基础2:光照、材质与微面元理论
- 如何从一段视频中一次性修整多个片段
- U盘的针脚板竟然掉了
- TrueCrypt编译记录
- mysql索引失效的情况
- 蓝懿iOS 技术内容交流和学习心得 11.11
- [教程] 关于一种比较特别的线段树写法
- 商标注册过程中,如何避免字体侵权?
- el-dialog改变中间内容的高度问题
- Java8日期/时间使用
- 分享|小程序游戏在自有APP上的正确运行方法
- 蓝桥杯第十届真题B组(2019年)