21天学会java(含电子书下载)21天学通java比较基础第一天 创建简单application和appletHotJava是一个浏览器
21天学会java(含电子书下载)
21天学通java
比较基础
第一天 创建简单application和appletHotJava是一个浏览器,它是第一个可以运行java的applet程序的浏览器,applet类似于页面中的图片原理,但它是动态的、可交互的。
java创建于1991,而hotjava创建于1994年
java是平台无关的,如java的基本数据类型在所有的平台上的长度都是一样的。
java开发环境有两部分:编译器(即jdk中的javac)和解释器(即jdk中的java)(编译器编译java源文件,并产生字节码文件,而bytecode文件是平台无关的,在通过
字节码解释器,解释成各个机器码,执行之)
java applet可以用appletviewer执行,它是jdk的一部分,也可以用支持applet的浏览器运行。
java文件名和定义的java公共类名是相同的。
Applet继承java.applet.Applet类,没有main方法,有init方法(初始化applet),
start方法(启动),paint方法(在屏幕上显示)HelloWorldApplet.java
import java.applet.Applet;import java.awt.Graphics;public class HelloWorldApplet extends Applet {public void paint(Graphics g){g.drawString("Hello World", 5, 25);}}applet必须是Public的,如果去掉public或改为其他修饰符,虽然编译通过,但执行时会出现错误
java.lang.RuntimeException: java.lang.IllegalAccessException: Class sun.plugin2.applet.Plugin2Manager$12 can not access a member of class HelloWorldApplet with modifiers ""编译java文件,javac HelloWorldApplet.java
然后将applet添加到Web页面中,需要编写相应的html文件,位置与编译后的HelloWorldApplet.class处在同一个目录
HelloWorldApplet.html,
<HTML> <HEAD><TITLE>Hello to Everyone!</TITLE></HEAD><BODY> <P>My Java applet says:<APPLET CODE="HelloWorldApplet.class" WIDTH=150 HEIGHT=25></BODY></HTML>
双击html文件,或appletviewer HelloWorldApplet.html,显示相应结果,并会在屏幕右下角有一个java的小图标,只有关闭浏览器时,小图标才会消失
第二天 面向对象编程
接口是一组操作的集合,操作并没有实现,只有方法头,没有方法体。
类方法和类变量可以用类本身调用,也可以用类的实例进行调用。建议用前者。
第三天,java基础
Number是所有数字类的父类,如Integer,Double,Float
java的语句以分号结束,有复杂语句,用{}包围。
变量其实是内存中的一个地址,存的是其值。变量声明:int x, y, z;
String firstName, LastName; 局部变量必须先初始化才能使用,而实例变量和类变量不必,因为它们有默认值。
java数据类型有:8种基本数据类型,类,数组。Java的浮点数字是符合IEEE 754(用于定义浮点数字和算术的国际标准)
java中三种注释:/* */(多行注释),//(单行注释),/** */(javadoc可以生成API)。
java有字符常量,有些带有转义字符的,如\ddd表示八进制表示的字符,
\xdd表示十六进制。。,\udddd表示Unicode表示的字符。
java的字符串常量比较特殊,当你使用字符串常量时,java会自动创建一个String类,而对于数字和字符常量则不会。
第四天,对象处理
类使用new实例化的,需要构造函数。当你创建一个实例时,java自动为该对象动态分配内存
System.out.println();System是一个与系统相关的类,out是PrintStream类型的类变量,println是方法
java中的casting映射?有三种:基本数据类型之间的,类之间的,以及将基本数据类型映射成类。
boolean类型的不能cast成其他类型,但是可以将1或0cast成boolean型。
类之间的cast必须满足继承关系。
基本类型和类之间的转换,要用到特殊的包装类,Integer intObject = new Integer(35);int theInt = intObject.intValue(); // returns 35
对象比较、复制、所属类
对象比较能用的运算符只有==和!=,不能用>=或其他。
对象复制:clone是Object的方法,clone没有参数。
确定对象所属类:String name = obj.getClass().getName();或者是instanceof
instanceof还可以用于接口,如果一个类实现了这个接口,返回true
第五天:数组,条件和循环
java中的数组也是对象。包括声明,创建数组对象(new)。
switch语句的条件只能是byte,short,int,char类型的,这些类型都能cast为int
第六天:创建类和应用程序 简单
第七天:方法 方法重载(同一个方法名,不同的参数,包括参数个数和类型,与方法的返回值没有关系)
构造方法,你不能直接调用构造方法,它是在你使用new关键字创建类时,由java自动调用的。
方法覆盖,当调用一个方法时,java会先在本类中寻找方法定义,如果没有,就到父类中寻找,直到找到为止,否则抛出异常。
finalizer方法,与构造方法相反,在垃圾回收和对象的空间释放时,调用该方法。
void finalize(){} 可以在任何时候调用该方法,但是不保证一定垃圾回收
。。。。。比较简单,自己慢慢看电子书吧