新手玩博客的第一天,为了更好适应今后的工作,找到自己的兴趣点,向互联网企业进发,希望自己能够至少掌握一门语言,所以拿起了这本书来啃,自己也知道学语言需要大量训练,但是也需要从基础做起。
借助此书,希望自己能够在半年内对Java有较为深入的把握,从新手开始,还有一段漫长的路要走,希望不管遇到什么困难,都能一如既往坚持下来,不用管别人的眼光,一定要知道自己想要什么。
(本人编程基础比较薄弱,学过C,C++,但是很遗憾,自己没有好好把握机会,掌握这两门语言。)
好啦,下面是我昨天看第一章的一点笔记:
Java是一种面向对象,独立于平台的编程语言,克服了C,C++的某些特点,具体来说,它有以下特征:
1. 自动负责内存的分配和释放。
2. 没有指针。(对1,2的直观感受是,指针是比较复杂的元素,处理需要十分小心)
3. 只具备面向对象编程中的单继承。
标红部分是需要加强理解之处:
关于“面向对象”,对应于“过程化编程”,过程化编程中,需要对计算机执行任务的步骤足够了解;
面向对象,注重任务本身,而非完成任务的方式,计算机程序被视为一组相互协同,共同完成任务的对象;面向对象有三大特性:封装(对内部细节的隐藏),继承(类的特性化和泛化),多态(不同场景下的处理方式)。
几个重要概念:
类:用于创建对象的模板,包含一组特点对象的所有特性。
对象:计算机程序中的独立元素,包含一组相关特性,能完成某种特定任务。
属性:对象区别于其他对象的数据。 | 属性由变量定义(变量:计算机程序中存放信息的位置) | eg:实例变量,类变量 |
行为:对象能够对自身和其他对象执行的操作。 | 行为通过使用方法实现(方法:类中一组完成特定任务的相关语句。函数/子程序) | eg:实例方法,类方法 |
继承:一种机制,让一个类能够继承另一个类的所有行为和属性。继承者为子类,被继承者为超类。Java中的单继承,指的是,一个子类只能对应一个超类(一对多)。从通用类Object开始,可以往下派生出多个层次的类,因此,在Java编程中,设计高效的类层次结构,是一个需要斟酌的问题。
接口:一组方法,解决共享行为(非继承行为)。
包:将相关类和接口编组(使用某个包中的类时,导入包可以简化引用命名,导入包不会导致内存增大)。
另外对于1.9认证练习的答案D,原说法为:类将继承其超类的属性和行为。
看过解释之后,我理解的正确说法应该为:
类将继承其超类的属性和行为以及超类从其超类继承来的属性和行为。
(不知道这样说有没有问题)。