一.基本Java的开发环境之类的
1.JDK里面包含了JRE,有了JRE我们就可以进行运行程序,但是想要去开发还需要JDK里面的开发工具,JDK里面包含了JRE所以安装JDK尤为重要,JVE是虚拟机的意思,JAVA代码是全平台都可运行的,为什么全平台都可以运行呢?就是因为他用虚拟机模拟了CPU的运行环境,能够更好地屏蔽掉一些底层的冗余环境。
2.关于Hello World
先新建project然后去建包package之后去建立class(类必须大写),System.out.println("Hello, World!!!")
ctrl+shift+f
3.面向过程与面向对象
面向对象:偷懒,找一个和JDK给我准备的方法,直接用就行了。复杂事情简单化
面向对象语言的特点:封装性,继承性,多态性
面向过程:每一个过程都需要我们亲历亲为,进行编写。//洗衣服手洗与用洗衣机洗的区别
数组是从0开始的array[0]是数组array里面的第一位。
二
1.什么是类
做程序模拟就是现实世界的事物。
类:一组相关属性(成员变量)和行为(成员方法):是什么能做什么,用来模拟显示事物(abstract)设计图
2.类和成员对象注意事项
关于成员方法与对象 是直接写在类里面的变量是成员变量,写在方法体外面,不要写static
创建对象 注意事项:
导包:注意在同一个文件夹下就不用导包了
创建:类名 name = new 类名()
引用:对象名.成员变量名(对象名.成员方法/对象名)
注意中文和string类下写英文必须用""括起来!!!
3.一个或者多个对象参内部发生的逻辑结构图
一个对象的内存图:首先是方法区,方法区最先有数据(几个class)
栈:进栈压栈,出栈清栈
堆:目前只考虑把new的东西装进去,类似一个中间地带???
方法区;先行原则,class先行!
这里两个对象名称(对象引用)指向了同一个对象空间(HEAP里的)
4.使用对象类型(类)作为方法的返回值,内部逻辑
5.使用对象类型作为方法的参数
mian{
Phone one = new Phoen();
one.brand...
method(one);
psvmethod(Phone param)//param 是参数的意思,然后这里的one是代表了new Phone 的地址,传进去后代替了param,所以后来就是 地址.成员..
}
类作为参数?当然可以,它们传递的都是地址,Java虽然省略了所谓的指针,但地址的思想不灭,传递地址不仅方便还能省内存,何乐而不为。
6.局部变量与成员变量的区别
定义位置:局部变量在方法体内部,成员方法定义在方法体外部(不加static)直接写在类里面 |
使用范围:局部变量只能在方法体中使用,而成员变量在整个类中都可以使用 |
默认值:局部变量没有默认值,syso(局部变量是错误的写法),但是成员变量是存在默认值的和数组一样,比如null,0... |
内存位置不同:局部变量存在栈中,成员变量存在堆中。 |
生命周期不同:局部变量出栈消失,成员变量随着对象被垃圾回收而消失。 |
参数在方法调用时必然会被赋值
7.封装性
封装继承多态
,封装:将细节信息隐藏起来,省心的目的,只管调用就行了。
练习:定义数组,找出getmax最大值
8.private
使用后超出本类范围后无法直接访问,间接访问用getter setter方法