一、一点点IDEA
IDEA是什么
它是一种用于java语言开发的集成环境。集成环境是把代码编写,编译,执行,调试等多种功能综合到一起的开发工具。
IDEA项目结构介绍
project(项目)>module(模块)>package(包)(相当于文件夹)>class(类)(也就是我们编写的代码。)
那么如果要在idea中编写代码,必须要新建这四个结构。
创建java项目
在创建新的java项目时要选择jdk的安装路径所在位置(第一次弄的时候没有注意到这个事情,创建好project后不知道如何创建package那些了)
ps:删除Module时要在Module Settings中
选中要删除的模块,点击减号,此时再选中要删除的模块会出现delete,会从硬盘上将此Module删除掉。(不查不知道,原来我连删除都不会)
常用快捷键
其实感觉多打几次就会熟悉常用的快捷键,还是要多实际操作啊~
二、一点点JAVA三大特性
封装
(1)概念
封装是指对于某个对象,Java隐藏对象的属性和实现细节,仅对外公开接口,控制程序中属性的读取和修改的范围级别
(2)优点
提高安全性
提高重用性:把重复的代码封装,之后在需要的地方进行调用。
(3)封装的原则
将不需要对外提供的内容都隐藏起来
把属性都隐藏,提供公共方法对其访问
private关键字:一个权限修饰符,用于修饰成员变量和成员方法。针对私有类,即同一个类中的所有对象之间可以访问其他不同的对象的私有成员,被私有化的成员只在本类中有效。
(只是纸上谈兵,对于具体的实现不是太懂)
继承
(1)自己的理解:
从已有的类中衍生除新的类。子类继承了父类中定义的所有属性和方法,还有特有的属性和方法。
这块我有个疑问:子类能否继承父类中私有的属性和方法?
java官方文档的解释:子类不能继承父类的私有属性,但是如果子类中公有的方法影响到了父类私有属性,那么私有属性是能够被子类使用的。感觉就是还是可以通过set,get等来间接访问父类中的私有苏属性。
看了其他的csdn博客:子类继承了父类所有的属性和方法,但是父类里的私有属性和方法子类无法直接访问到。
这个地方有的博客提到了java反射机制,说上述观点要在不考虑这个反射机制的情况下,于是我去百度了下,大概意思:JVM得到class对象之后,再通过class对象进行反编译,从而获取对象的各种信息。程序运行时可能需要动态加载某些类,这些类因为之前用不到,所以没有被加载到JVM中。通过反射,可以在运行时动态创建对象并调用其属性,不需要提前在编译期知道运行的对象是谁。
(感觉还不是特别理解,可能是因为没有预习动态类的原因,先搁置,等之后预习/学习后再来解决)
(2)实现:
extends
—编写父类
—编写子类(特有的属性和方法)
—继承父类:例:class Duck extends Animal{}
多态
(1)在面向对象的语言中,多态性指一个方法可以有多种实现方法。同一份代码,不同子类调用可以产生不同的效果。类的多态性体现在方法的多态性,方法的多态性主要有方法重载和方法覆盖。
(2)实现:
必须在继承体系下
子类必须对父类中的方法进行重写
通过父类的引用调用重写的方法
第一周的预习的条理性感觉不太好,以后会多注意~