dijiuzu

 

20220718 第九组 于芮 面向对象--挺抽象(第十一天)

 
小白成长记——第十一天
 
   今天开始正式学习面向对象了,又开始了新一轮的信念攻击,又是有些蒙圈的状态,好像听懂了又没完全听懂,好像明白了又好像不是很明白,就像一首朦胧诗,理解不同好像感受就不同,还是要花费时间仔细思考一下,这是一个很大的概念,还是要学会打开自己的格局,好啦,来看看今天的学习笔记吧!

面向对象(万事万物皆对象)
Linux(万事万物接文件)

面向过程和面向对象
面向过程:分析出实现需求需要的步骤,通过一些方法一步一步实现。
面向对象(行为化):把整个需求的按照特点或者是功能划分需求,将存在共性的部分封装成类(类实例化才是对象),让对象解决问题
面向对象更高级的抽象,是对现实世界的映射

面向对象的特征:
1,封装
把变量直接声明在类里,成员变量(全局变量)
把变量声明在某个方法里,局部变量
命名规则:小驼峰
创建对象的过程:类的实例化过程,对象又叫做类的一个实例
创建对象语法:类名 对象名= new 类名();
每一个对象之间都是相互隔离的
2,继承
3,多态
4,抽象

创建对象的语法:类名 对象名=new 类名();

两块内存空间
1.栈:变量,基本数据类型
2.堆:存放对象的空间

 

方法(成员方法-js里的函数)(方法名不能重复)
自己调自己-递归,Stack OverflowError 栈溢出,内存溢出
语法 public void 方法名(){}
public:访问权限修饰符
void:没有返回值
方法名:标识符
1.方法体{}:这个方法具体要做什么
2.():传参数(需要明确数据类型)-可以用自动类型转换
声明方法时,括号里的参数-叫形式参数,可当做局部变量使用,
调用方法时,真正传入方法的参数-叫实际参数
有返回值的方法在执行后会得到一个具体的值
语法:public 返回值类型 方法名(){}
标识符的命名规则
1.类名 大驼峰(所有字母都大写) 字母数字下划线美元符号,数字不能开头
2.属性名,方法名 小驼峰(第一个字母大写)


public:公共的,公有的,最大,只要是public生命的方法
protected:受保护的,
默认的:友好的
private:私有的,最小,只有在当前类可以使用

如果一个方法由static,要调用一个非static,就只能创建对象,使用对象,方法的形式调用

方法的重载要求和特点
1.方法名相同
2.参数的不同(参数的类型,参数的个数,参数的顺序)
3.与返回值类型无关,与访问权限修饰符无关
4.发生在同一个类里
好处:把功能相思相同的方法用同一个名字

不定长参数(int ...arr--本质上是数组类型)
1.参数列表中之多有一个不定长参数
2.不定长参数必须在最后位置

访问权限
public:一个工程下任意位置都可以访问(类,属性,方法)
protected:可以跨包,如果跨包,必须是他的子类(属性,方法)
默认的:当前包下可以访问(类,属性,方法)
private:私有的,只有当前类可以访问(属性,方法)


java.lang包下的所有类不需要显式的导入


构造器(构造方法)
1.java在new对象的时候,先看对象所对应的类有没有构造器,有什么样的构造器。
如果没有构造器,则无法创建对象
2,每个类都会有一个默认的无参的构造器。
3.在对象实例化时,调用了构造器
4.我们创建对象实际上是通过构造器创建的。
5.如果一个类中显式的声明了一个构造器,原来默认自带的无参构造器失效
语法:类名 对象名=new 构造器

类与类之前的关系
has a 包含关系

 

    今天整个学习过程说起来还是有些困难的,但是孔子云:温故而知新,可以为师矣,努力还是会有回报的,加油啊!!一定可以,又是在知识的海洋里遨游的一天!

 

posted on 2022-07-18 18:27  于芮  阅读(15)  评论(0编辑  收藏  举报

导航