第一章对象导论(Java的几个重要部分)访问控制的目的:1.权限控制 2.类创建者修改某些实现而不会影响类使用者代码复用的方式:1.继承 2.组合(composition UML中实心菱形+实线表示)继承(UML中空心三角+实心线表示)基类与子类行为不同的产生方式为子类新增方法在子类覆盖(overriding)基类的原来的方法两种关系是一个 is-a 纯粹替代(子类和父类接口方法完全相同,子类的接
运算符按位运算与(&)两个操作数中位都为1,结果才为1,否则结果为0或
原创 2021-08-27 10:47:14
292阅读
think in Java第一章1.1抽象所有东西都是对象。对象里面保存着数据,对象可以对自己进行操作。程序包含许多对象。通过消息传递调用对象。每个对象都有自己的存储空间,可以封装其他对象生成新对象。每个对象都有一直类型,都是类的实例,能够接受不同类型的消息。同类对象能接收相同的消息——对象的【可替代性】。1.2对象的接口“类型”决定了接口,而“类”是那个接口的一种特殊实现方式。1.3实现方案的隐藏“public”(公共)意味着后续的定义任何人均可使用。“private”(私有
原创 2021-10-22 16:23:57
141阅读
think in Java 第一章 1.1抽象 所有东西都是对象。对象里面保存着数据,对象可以对自己进行操
原创 2022-05-30 10:06:25
232阅读
运算符按位运算与(&)两个操作数中位都为1,结果才为1,否则结果为0或(|)两个位只要有一个为1,那么结果就是1,否则就为0非(~)如果位为0,结果是1,如果位为1,结果是0亦或(^)两个操作数的位中,相同则结果为0,不同则结果为1。移位运算符左移运算符(<<)num
原创 2022-02-16 11:44:24
49阅读
think in Java 第一章 1.1抽象 所有东西都是对象。对象里面保存着数据,对象可以对自己进行操作。
原创 2022-05-30 10:06:54
112阅读
进程试运行在它自己的地址空间内的自包容的程序。多任务操作系统可以通过周期性地将CPU从一个进程切换到另一个进程。操作系统会将进程互相隔离开,因为他们不会彼此干涉。编写多线程程序最基本的困难在于在协调不同线程驱动的任务之间对共享资源的使用,以使得这些资源不会同时被多个任务访问。1.线程机制一个线程是在进程中的一个单一的顺序控制流,因此,单个进程可以拥有多个并发执行的线程。每个任务都觉得自己在一直占用
原创 2013-06-26 10:06:39
1381阅读
Java提供了大量持有对象的方法:数组将数字与对象联系起来。它保存类型明确的对象,查询对象时,不需要对结果做类型转换。它可以是多维的,可以保存基本类型的数据。但是数组一旦生成,其容量就不能改变。四种容器:Map、List、Set和Queue,他们各自有两到三个实现版本。常用的容器用黑色粗线框表示。虚线框表示接口,实线框表示普通类。空心箭头表示一个特定的类实现了一个接口,实心箭头表示某个类可以生成箭
原创 2013-06-23 19:31:38
1028阅读
1.输入输出InputStream和OutputStream是面向字节的,Reader和Write则面向字符的且兼容Unicode。InputStream类型ByteArrayInputStream:允许将内存的缓冲区当作InputStream使用StringBufferInputStream:将String转换成InputStreamFileInputStream:用于从文件中读取信息Piped
原创 2013-06-25 15:29:50
1133阅读
## **如何实现Think in Java** 作为一名经验丰富的开发者,我很乐意教会刚入行的小白如何实现"Think in Java"。在这篇文章中,我将向你展示整个实现过程,并提供每一步所需的代码和注释。 ### **步骤概览** 首先,让我们来看看整个实现过程的步骤。下表将展示完成"Think in Java"的主要步骤。 | 步骤 | 描述 | | --- | --- | | 第一
原创 9月前
20阅读
案例public class ValHod { public int i = 10; } public class ObParm { public static void main(String[] args) { ObParm o = new ObParm(); o.amethod(); } public void
原创 2013-06-19 13:02:51
1396阅读
不可变StringString对象是不可变的。String类中的每一次看起来会修改String值的方法,实际上都是创建了一个新的String对象。重载 "+"与StringBuilderString mango = "mango";String s = "abc" + mango + "def"+ 47;String对
原创 2013-06-25 15:57:38
899阅读
Java操作符作用于操作数,生成一个新值。几乎所有的操作符都智能操作基本类型,例外的操作符是"="、"=="、和"!=",这些操作符可以操作所有的对象,除此之外,String类还支持"+"和"+="。优先级当一个表达式中存在多个操作符时,操作符的优先级决定了各部分的计算顺序。赋值赋值操作符&quot
原创 2013-06-25 16:48:52
1233阅读
一、 对象存储在那个地方  (1) 寄存器(register) 位于cpu内部,资源有限由程序编译的时候根据需求进行分配(2) 堆栈(stack)
原创 2022-08-26 15:15:11
32阅读
一、多线程基本概念 独占:通过阻止多个并发行为间的有害干扰来维护状态的一致性。通常使用异步方法sychronized 状态依赖:触发
原创 2022-11-15 20:39:16
68阅读
学习JAVA之后,感觉还是Think in java最使用,现上传供大家参考。
原创 2007-06-27 12:31:49
906阅读
3评论
“进行面向对象的设计时,一项基本的考虑是:如何将发生变化的东西与保持不变的东西分隔开。” 为什么? 库的用户(client programmer):必须应该知道他可以使用那些类的成员和方法。 库的创建者:为了以后能对库自由地进行修改与改进,同时保证客户程序员代码不会受到那些变动的影响;因此他需要声明哪些东西是客户程序员可以使用的,哪些是不可使用的。把所有不想被用户使用的都声明为
数组将数字与对象联系起来。它保存类型明确的对象,查询对象时,不需要对结果做类型转换。它可以是多维的,可以保存基本类型的数据。但是数组一旦生成,其容量就不能改变。1.Set和存储顺序Set(Interface)存入Set的每个元素都必须是为唯一的,因为Set不保存重复元素。加入Set的元素必须定义equals()方法以确保对象的唯一性。Set与Collection有完全一样的接口。Set接口不保证维
原创 2013-06-24 15:49:49
1288阅读
Where storage lives1.Registers2.The stack3.The heap4.Constant storage5.Non-RAM storagejava Primitive type: Wrapper type1.boolean Boolean2.char 16 bits Character3.byte 8 bits Byte4.short 16 bits Short5.int 32 bits Integer6.long 64 bits Long7.float 32 bits Float8.double 64 bits Double9.void VoidHigh-p Read More
转载 2011-03-14 20:02:00
72阅读
2评论
Think in Java源码编译与安装1:将你的下载的源码解压到c:\TIJ4\code目录中2:安装JDK se5 最好是 jdk SE5 否则,需要修改源码中所有的build.xml中 equals arg1="1.5" 改成 equals arg1="1.6".           我用的是
  • 1
  • 2
  • 3
  • 4
  • 5