第二天的课程明显就比第一天的要难了, 表示很吃力,脑子不够用的节奏。
各种概念绕来绕去,脑袋都要绕成了壳。
不过还好没有放弃,想个办法画出各概念间的联系,虽然没全记住,但是还算是看懂文字了。
亲测结果,两天是可以学完基础的,但是脑子一定要保持清醒,绕晕了的时候就转换下思维,静静,静完再继续。
之前对 Java 一直不感冒,大学的时候听说哪个学长一个月就精通了,我就想那么聪明的人都要花一个月,好难呀。这么多年,身边那么多人都会用 Java,我都没敢学。这一次没办法,给自己做了个投资,必须得用 Java 完成,只好硬着头皮上战场了,结果还可以,感谢在线教育,感谢 imooc 慕课网,感谢各种网 ,以前聪明人得花一个月学到的东西,现在我这个蜗牛一个周末也能踏进大门口了,当然这只是皮毛,不过还是好开心。不如大家一起来用一个周末静静地学一下吧。
借用 木刻雪原 同学的拓扑图,再加上自己画的逻辑图,希望可以让大家学的时候不用像我一样绕成壳,当然还是要多敲敲敲,学啥都是多想多敲。
Java-imooc-1-类/对象
课程地址:http://www.imooc.com/learn/124
总结图片来自 http://www.imooc.com/article/10715
**面向
**,即关注。
对象, 是具体信息,类是信息的描述,是信息的类型。
属性,就是这个对象有什么。
方法,就是这个对象能干什么。
类和对象的关系:
类,class ,是基本元素,先写类,再写对象。
定义类,首字母大写!
package test;public class Telphone { // 属性(有什么) float screen; float cpu; float mem; // 方法(能干什么) void call(){ System.out.println("Telphone can make a call"); } void sendMessage(){ System.out.println("Telphone can send message"); } }
如何创建 对象?
类-以代码形式保存在文件当中,当把代码信息放在内存中,信息的集合称为对象,这个过程叫做实例化,new Telphone().
属性,也被称为实例变量。
创建好对象后,实例变量的值是什么?
创建好对象
赋给变量
变量的类型写上,类型就是类的名字
成员变量 vs 局部变量:
定义域:局部变量只在自身方法中有效
初始化:局部变量需要在方法中初始化
优先级:名字相同时,优先取局部变量的值
构造方法:
构造方法 public HelloWorld() {}
如何使用 构造方法?
创建对象时,实际上是在执行 构造方法。
Telphone phone = new Telphone();
关系:project-package-class类-实例(方法,成员变量,局部变量)
创建对象-无参,有参 的构造方法:
例如,自定了一个有参的构造方法,就不会再系统自动生成一个无参的构造方法。
Static 静态
我们可以基于一个类创建多个该类的对象,每个对象都拥有自己的成员,希望该类所有的对象共享同一个成员。此时就是 static 大显身手的时候。
Java 中被 static 修饰的成员称为静态成员或类成员。它属于整个类所有,而不是某个对象所有,即被类的所有对象所共享。
当系统第一次使用该类时,就会为其分配内存空间直到该类被卸载才会进行资源回收!
使用 static 可以修饰变量、方法和代码块。
需要注意:
1、 静态方法中可以直接调用同类中的静态成员,但不能直接调用非静态成员。
2、 在普通成员方法中,则可以直接访问同类的非静态变量和静态变量
3、** 静态方法中不能直接调用非静态方法,需要通过对象来访问非静态方法。**
静态初始化块只在类加载时执行,且只会执行一次,同时静态初始化块只能给静态变量赋值,不能初始化普通的成员变量。
程序运行时静态初始化块最先被执行,然后执行普通初始化块,最后才执行构造方法。由于静态初始化块只在类加载时执行一次,所以当再次创建对象 hello2 时并未执行静态初始化块。