
Head First Java
文章平均质量分 92
矢之炽~
一遇风云便化龙
展开
-
14.序列化和文件的输入/输出 保存对象
你已经奏出完美的乐章,现在会想把它储存起来。你可以抓个文房四宝把它记下来,但也可以按下储存按钮(或按下File菜单上的Save)。然后你帮文件命名,并希望这个文件不会让屏幕变成蓝色的画面。储存状态的选择有很多种,这可能要看你会如何使用储存下来的状态而决定。当然还有其他的选择。你可以将数据存进任何格式中。举例来说,你可以把数据用字节而不是字符来写入,或者你也可以将数据写成Java的primitive主数据类型,有一些方法可以提供int、long、boolean等的写入功能。原创 2023-11-07 22:36:10 · 449 阅读 · 0 评论 -
8.接口与抽象类 深入多态
你或许认为抽象类中的某些行为在没有特定的运行时不会有任何的意义。也就是说,没有任何通用的实现是可行的。想象一下通用的eat()方法会有什么结果?抽象的方法没有实体!因为你已经知道编写出抽象方法的程序代码没有意义,所以不会含有方法。原创 2023-11-05 23:16:12 · 165 阅读 · 0 评论 -
9.构造器与垃圾收集器 对象的前世今生
栈与堆:生存空间在Java中,程序员会在乎内存中的两种区域:对象的生存空间堆(heap)和方法调用及变量的生存空间(stack)。当Java虚拟机启动时,它会从底层的操作系统取得一块内存,并以此区段来执行Java程序。至于有多少内存,以及你是否能够调整它都要看Java虚拟机与平台的版本而定。但通常你对这些事情无法加以控制。如果程序设计得不错的话,你或许也不太需要在乎。我们知道所有的对象都存活于可垃圾回收的堆上,但我们还没看过变量的生存空间。而变量存在于哪一个空间要看它是哪一种变量而定。这里说的“哪一种”不是原创 2023-10-19 22:41:15 · 239 阅读 · 0 评论 -
7.继承与多态 对象村的优质生活
在设计继承时,你会把共同的程序代码放在某个类中,然后告诉其他的类说此类是它们的父类。当某个类继承另一个类的时候,也就是子类继承自父类。以Java的方式说,这是“子类继承父类”。继承的关系意味着子类继承了父类的方法。当我们提及“类的成员”时,成员的意思就是实例变量和方法。举例来说,如果PantherMan是个SuperHero的子类,则PantherMan会自动地继承SuperHero的实例变量和方法,包括了suit、tights、specialPower、useSpecialPower()等。原创 2023-10-16 22:35:10 · 687 阅读 · 0 评论 -
6.认识Java的API 使用Java函数库
SimpleDotCom类中的checkYourself()方法中的for循环有问题每当玩家猜中某一格时,就将计数器加数,而不管之前是否就已经被猜中。需要一种机制来判别之前是否已经被猜中。虚拟的行占有7个各自,而DotCom会占有其中连续的3格。下面的虚拟列展示出占领4,5,6三格的DotComDotCom有个实例变量——一个int数组来保存DotCom对象的位置使用第二个数组,每当玩家猜中某一格时,就把相对的那一格设定称true,之后每次猜中都要检查是否在之前就已经被猜过了。原创 2023-10-16 20:09:08 · 170 阅读 · 0 评论 -
5.编写程序 超强力方法
从Java5.0(Tiger)开始,Java语言就有称为加强版的for循环,它能够很容易地逐个运行数组或其他集合(collection)的元素。(下一章会讨论其他类型的集合)。这是个很好的强化功能,因为这是for循环很常见的用途。我们会在讨论非数组的集合时再次看到加强版的for循环。原创 2023-10-10 21:47:16 · 182 阅读 · 0 评论 -
4.方法操作实例变量 对象的行为
同一类型的每个对象能够有不同的方法行为,任一类的每个实例都带有相同的方法,但是方法可以根据实例变量的值来表现不同的行为。play()会播放title值表示的歌曲,调用某个实例的play()可能会播放“Politik”而另一个会播放“Darkstar”,然而方法却是相同的小型犬的叫声与大型犬不同Dog类中的bark()方法会用size实例变量来决定使用哪一种声音。原创 2023-10-08 22:54:16 · 303 阅读 · 0 评论 -
3.primitive主数据类型和引用 认识变量
Java注重类型。它不会让你做出把长颈鹿类型变量装进兔子类型变量中这种诡异又危险的举动——如果有人对长颈鹿调用“跳跃”这个方法会发生什么样的悲剧?并且它也不会让你将浮点数类型变量放进整数类型的变量中,除非你先跟编译器确认过数字可以损失掉精确度(例如说舍去所有的小数值)。编译器会指出大部分的问题:这样的程序过不了编译器这关。为了要让类型安全能够发挥作用,必须声明所有变量的类型,指定它是个int类型或是个Dog类型。变量有两种口味:清凉的primitive主数据类型与香辣的对象引用。原创 2023-10-08 01:12:18 · 981 阅读 · 0 评论 -
2.类与对象 拜访对象村
对象是已知的事物对象会执行的动作实例变量(instance variable)方法(methods)对象本身已知的事物称为实例变量,代表对象的状态(数据),且该类型的每一个对象都会独立的拥有一份该类型的值。可以把对象当作实例。对象可以执行的动作称为方法。设计类时,也会设计出操作对象数据的方法。对象带有读取或操作实例变量的方法是很常见的。如闹钟对象会有一个变量来保存响铃时间,且会有getTime()与setTime()两个方法来存取该时间。对象带有实例变量和方法,它们都是类设计中的一部分。原创 2023-10-04 01:42:26 · 119 阅读 · 0 评论 -
1.基本概念 进入Java的世界
类存于源文件里面,方法存于类中,语句(statement)存于方法中源文件(扩展名为.java)带有类的定义。类用来表示程序的一个组件,小程序或许只会有一个类。类的内容必须包在花括号里面。类中带有一个或多个方法。在Dog这个类中,bark方法带有如何“汪汪“的指令。方法必须在类的内部声明。在方法的花括号中编写方法 应该执行的指令。方法代码是由一组语句所组成,可以把方法想象成是一个函数或过程。原创 2023-10-02 16:53:13 · 251 阅读 · 0 评论