1.Java中没有多继承,而是用接口来代替多继承$ ]: X) |$ ]" }3 H
. p* R h C8 A8 j F. V 2.运行一个已经编译的程序时,Java解释器总是从指定类的main方法中的代码开始执行,因此,执行代码中必须有一个main函数。
' l% ]8 P8 x ] ~ ( s5 A1 Y6 K5 x! Y4 ~. y( ?( G
3.Java是典型的强类型语言,即必须声明变量的类型,Java中有8种类型,6种数值类型(4个整数型和2个浮点型)、一个字符类型和一个boolean类型。! ]4 j8 j& t* K$ }# [
9 n0 B2 W- H( v1 n- V" `2 ^/ y 4.强制类型转换:* O0 I. o/ `: m$ n0 I. E0 d" o4 x9 S
: x5 x) r7 R# [: k$ P; U1 n3 X int nx = (int) x; // (语法:用圆括号将目标类型括起来,后面跟上要转换的变量);7 E3 @6 k# S9 B
" b) T3 L5 U! v6 c6 e 5.Java不能为单独的方法,如main方法,定义局部常量,而只能为类定义常量,供该类的所有方法使用,所以,通常称之为类常量。如:
& E& u4 K# |! e. o, t# q1 [9 x! c : @4 O: x0 k2 U; j3 S% c% ?
class UsersConstants{ 2public static final double g = 32; public static final double main(String[] args){ System.out.println(g); } }( J t/ R0 s% w# w
6 |' K" h9 L5 ?( H) J! h4 f# x! t 注意:常量定义于main方法的外边,而且必须有关键字 static final;
% S5 g' S6 c$ t* Y! t6 ~
& M. K) c/ F6 t 6.字符串的子串:
% x1 q- d4 M7 {0 L
# V: M' T; l& Q: Q String str = hello""; String str1 = str.substring(0,4); //输出hell
/ w" d9 R+ K6 v3 ` 0 F* w( g, i, o% ` M( H' c
7.不要用==运算符来测试两个字符串是否相等,该运算符只能判断两个字符串是否存在同一个位置。( N' @4 |# j; C
: A7 _. ~# J4 I/ I 用equals.3 c1 O# {" T. }# h
0 a$ F4 b! [5 C String str = "hello"; str.equals("hell"); // return false;
8 m! d# a3 V; T
/ l1 f. |! L0 G. J. Z8 x 8.对象的行为、状态、标识
% |6 O# i; s& i
. O! s& b x( |5 A5 f8 S$ v 9.面向过程与OOP
# W. _6 w' N# [ w6 u# [
9 Q2 R3 G$ T: o# c6 M8 Z: C k# G2 Z+ j+ N) G1 C; F) z* ^$ e
! K- @+ k+ V& J3 { 10.构造函数:
q- E- ?4 A) \9 d5 ? " ?; I% O/ N4 O$ S# i# P* C
用于初始化类的对象,必须于类的名称相同、构造函数可有一个或多个参数、总是用new关键字来调用构造函数、一个类可以有多个构造函数(参数不同)。
- _; }$ D# D7 F6 M, K, m: W
: E7 B5 t( M, s7 {) n 11.静态方法:# K. t$ |# d/ T0 G
1 x" R( c7 R2 x' ^- p1 o
静态方法是属于类的,不需要创建类的实例对象就可以调用静态方法。如控制台类:
3 ~ v4 m; l+ U1 p / D9 ^) r6 \! ^3 E
x = Console.readDouble();- A( J, X9 z% m) k% y7 N
& j6 `4 g0 F7 \: h- p+ x4 c8 e0 \- P
使用类的静态方法的一般语法为:类名。静态方法(参数);
" Q3 O# u, n8 y7 E! C' B. _: q
3 o. v' k0 x. o0 ]) ]2 I 12.重载(多态性):5 q B5 k1 o% h* Z0 m; Y, s: Z) L3 x
9 }# L& t! X6 R% l! a! p; I' ` 如果一个类下面有几个相同的方法,但是参数不同,这样就形成了方法的重载。& Z7 l# v& e% ]+ [5 r
6 o/ A+ y4 U1 q7 ?* h! Q6 f Java可以重载任何方法,而不仅是构造函数。
1 n. _. C8 V8 R# F* ?+ G# K; Q / L. Y( s Z; t" u2 v
13.对象的类型转换:
! N& U- x% ^4 E( l1 [9 Z
) q4 O5 U: f3 Q3 K% G6 U$ _ Manager boss = (Manager) args[0];
: z2 [; J" C6 G! i" S s
$ _: }3 Y9 C( o% V5 Z; v# s 14.Java数组和Java向量的区别:
' i f3 P, V2 d% a! j0 D ; W& s6 U, L' d9 l0 G) T
Java数组可以存储任何类型的变量,Java向量只能存储对象类的实例。
) x* p$ r7 `" w
2 h) c* s3 M" | Vector() //构造一个空的向量,初始容量为10,当超出当前容量时,容量加倍。 Vector(int initialcapicity) Vector(int initialcapicity,int n) //当超出当前向量,当前向量数+n扩展。 void addElement(Object obj) //向向量尾部附加一个新元素 int size()
0 }; Y; l# U6 e% n y0 j
5 l# K* o+ r$ u( S/ _' s 15.具有一个或多个抽象方法的类,必须声明为抽象类(关键字abstract)
: w5 k& m4 e' z9 g" u+ d! I 5 _! w. @9 b, X, H
//public abstract class HelloWorld(){ public abstract void test(); //抽象方法:是不完整的方法,仅有声明而没有方法体 }
7 Y# y# Z8 U% q) w1 J
& b3 ^" Q4 s5 z 抽象方法要求所有从抽象类派生的非抽象类都将实现该抽象方法。抽象方法作为占位符方法是在子类中实现的。
7 z |3 |/ R7 B6 [
2 x$ |2 P. I6 [! E 16.抽象类不可实例化(由于抽象类可能包含不完整的抽象方法)
4 N+ u3 m' |- \ # @0 c9 R0 Q& ?. n X
17.JDBC的内部原理及思想:
+ z# _0 ^. g# j: C" g
( _/ \6 ~% r3 g) F' ^" V6 A 1) JDBC实际有两层组成,上层是JDBC API,该API与数据库驱动程序通信,向其发送SQL语句。数据库驱动程序将SQL语句与关系型数据库连接。- P. j, c0 x" l
5 Y$ N' k/ j: A' ~* C3 P( @ 2)JDBC与数据库连接模型:
' R2 W$ y" a" G# A6 K8 |/ D. S |