java经典基础总结
- 格式:doc
- 大小:216.50 KB
- 文档页数:36
第一章 Java入门★类名的命名规则:1、类名应该有意义,通常代表现实生活的类;2、类名应该是名词,而且类名的首字符必须大写;3、必须不是Java的关键字;4、能以字母、下划线‘_’或‘﹩’符号开头;5、不能包含嵌入的空格或间隔‘.’;6、能包含不同的字母的字符,象日文、希腊文和希伯来文。
★方法名的命名规则:1、必须不能是Java的关键字;2、不能以数字开头;3、能以字母、下划线‘_’或﹩符号开头;4、不能包含嵌入的空格或间隔‘.’;5、能包含各种字符集中的字符,如日文、希腊文和希伯来文。
6、方法名应该有意义。
名字应该反映该方法完成的任务;7、方法名应该以动词开头,后跟名词;8、如果方法名包含两个或两个以上单词,应该将它们连接起来,同时每个单词的首字母大写,但第一个单词以小写开头。
★变量名的命名规则:1、必须不能为Java的关键字;2、能以字母、下划线‘_’或‘﹩’符号开始,不能以数字开头;3、必须不能包含空格,不能使用标点符号;4、能包含各种字符集的字符,如日文、希腊文和希伯来文。
5、变量名应该有意义,应该能反映变量所包含的数据;6、变量名应该为名词,并以小写字母开头;7、如果变量名包含两个或更多的词,把它们连接起来,每个词的首字母大写,但第一个词的首字母小写。
9、最终变量在程序中一般用大写例:private final double PI=3.14159;★应用程序开发过程(Java Application)1、创建源文件:在记事本中输入程序源代码2、半编译:dos下输入javac 文件名.java //将源文件编译成class文件3、半解释—运行:dos下输入java 文件名 //执行class文件★向应用程序传递参数class WhoSayWhat {public static void main (String args[]) {if(args.length<2) {System.out.println(″请向程序输入两个参数:″);System.exit(0);}String s = args[0];String s2= args[1];System.out.println(s+″ say:″+s2);}}String代表字符串args数组的名字,可自行命名[]代表一个数组,即几个字符串(args.length<2)用数组args的属性length来判断输入的参数是否够2个用args[0]和args[1]分别接收第一、第二个命令行参数参数可以为0个或多个,多个参数间用逗号分隔。
★Java Applet开发过程1、创建源文件:在记事本中输入程序源代码(需倒包)2、半编译:dos下输入javac 文件名.java //将源文件编译成class文件3、创建HTML文件<HTML><HEAD><TITLE>An Applet</TITLE></HEAD><BODY><applet code="HelloWorldApplet.class" width=200 height=400></applet></BODY></HTML>4、运行:dos下输入appletviewer 文件名.html或直接用浏览器打开HTML文件。
第二章方法设计★方法分类:实例方法方法返回值类型不是void时,方法体中必须有成员方法 return语句来返回一个方法声明时指定的类型值静态方法(类方法)方法构造方法:构造方法名=类名;无返回值类型,也不用void修饰。
主方法(main方法)★声明方法首部:[访问权限修饰符] [方法修饰符] <返回值类型> <方法名> ([形式参数列表]) public static intprotected final floatprivate synchronized doublefriendly abstract void(无返回值)★返回值类型排序:byte short int long float double char boolean字节短整整型长整单精度浮点双精度浮点字符型布尔型(true false) 8 16 32 64 32浮点 64浮点 16单字符 1位★Java语言中的循环结构语句共有三种:1、while语句“当型”while(布尔表达式){语句; //循环体}2、do-while语句“直到型”do{语句; //循环体}while(布尔表达式);无限循环while(true) {//循环体}3、for语句“当型”for(初始化表达式;测试表达式;增值/减值表达式){语句; //循环体}★两种选择语句1、if else结构if(布尔表达式){语句1;[else{语句2;}]2、switch case结构switch(表达式) byte、char、short或int类型的表达式{case 表达式1:语句;[break;]case 表达式2:语句;[break;]……case 表达式n:语句;[break;][default:]默认处理语句;[break;]}★方法间的调用:(类方法范围大,实例方法范围小)public class MethodTst {public void method1() {method2(); //同一个类,实例方法调用实例方法:用方法名调用method3(); //同一个类,实例方法调用类方法:用方法名调用}public void method2() {method1();}public static void method3() {method4(); //同一个类,类方法调用类方法:用方法名调用MethodTst mt = new MethodTst(); //同一个类,类方法调用实例方法:创建本类的对象,mt.method1(); //用"对象名.实例方法名()"的形式调用}public static void method4() {method3();public static void main(String[] args) {method3(); //同一个类,main()方法调用类方法:用方法名调用method4();MethodTst mt = new MethodTst();mt.method1(); //同一个类,main()方法调用实例方法,先创建本类的对象//用"对象名.实例方法名()"的形式调用}}public class Test {public void test() {MethodTst mt = new MethodTst();mt.method1(); //调用另一个类的实例方法时,首先创建该方法所在类的的对象//然后采用"对象名.实例方法名()"的形式调用mt.method3(); //调用另一个类的类方法时,可以采用"对象名.实例方法名()"//的形式调用,虽然可行,但此形式不推荐使用MethodTst.method3(); //正确的调用方式是采用"类名.类方法名()"的形式调用}}★同类间调用:实例方法调用实例方法方法名实例方法调用类方法方法名类方法调用类方法方法名类方法调用实例方法创建对象,对象名.实例方法名() 或new类名().方法名() main()方法调用实例方法创建对象,对象名.实例方法名() 或new类名().方法名() main()方法调用类方法方法名★不同类间调用:实例方法调用实例方法创建对象,对象名.实例方法名() 或new类名().方法名() 实例方法调用类方法类名.类方法名()类方法调用类方法类名.类方法名()类方法调用实例方法创建对象,对象名.实例方法名() 或new类名().方法名()★输入及转换一个变量的java格式(将字符串型整型转为正常类型)public class Fax {public static void main(String[] args) {int n=Integer.parseInt(args[0]); //输入一个值并转换成整型int f;if (n < 5)f = 10;else if (n > 20)f = 30;elsef = 20;System.out.println(f);}}★第二章书后习题P59—2.6解1:public class DivideInt4 {public static void main(String[] args) {int m = 0;for (int x = 10006; x <= 99996; x += 10) {if (x % 3 != 0)continue;m++;}System.out.println("个位是6且能被3整除的五位数有:" + m + "个");}}解2:public class DivideInt2 {public static void main(String[] args) {int m = 0;for (int x = 10000; x < 100000; x++) {if (x % 10 == 6 && x % 3 == 0)m++;}System.out.println("个位是6且能被3整除的五位数有:" + m + "个");}}P59—2.7public class Image27 {public static void main(String[] args) {for (int i = 1; i <= 7; i += 2) { // 打印前四行System.out.println();for (int j = 1; j <= i; j++)System.out.print("*");}for (int i = 4; i >= 1; i--) {// 打印后四行System.out.println();for (int j = 1; j <= i; j++)System.out.print("*");}}}解2:public class TuanTest {public static void main(String[] args) { int i, j, k;for (i = 0; i <= 3; i++) {for (k = 0; k <= 2 * i; k++)System.out.print("* ");System.out.println(" \n");}for (i = 0; i <= 3; i++) {for (k = 0; k <= 3-i; k++)System.out.print("* ");System.out.println("\n");}}}P60—2.8解1://此题为老师用main方法调用做public class SushuT28 {public void getYinzi(int x) {out: for (int i = 2; i < x; i++) {if (x % i == 0) {for (int j = 2; j < i; j++) {if (i % j == 0)continue out;}System.out.println(i);}}}public static void main(String[] args) {new SushuT28().getYinzi(18);}}解2:public class SuShu28 {public static void main(String[] args) {int x = Integer.parseInt(args[0]);out: for (int i = 2; i < x; i++) {if (x % i == 0) {for (int j = 2; j < i; j++)if (i % j == 0)continue out;System.out.println("所输入的数的素数因子为:" + i);}}}}P60—2.9解1://此题为老师用main方法调用做public class WanshuT29 {public void getWanshu() {for (int i = 2; i <= 100; i++) {int sum = 0;for (int x = 1; x < i; x++) {int t = i % x;if (t == 0) {sum += x;}}if (sum == i)System.out.println(i);}}public static void main(String[] args) {new WanshuT29().getWanshu();}}P60—2.10public class TakeBrick210 {public static void main(String[] args) {int x;int y;int z;for (x = 1; x < 9; x++) {for (y = 1; y < 12; y++) {for (z = 2; z <= 36; z += 2) {if (4 * x + 3 * y + z / 2 == 36 && x + y + z == 36)System.out.println("男" + x + "人, 女" + y + "人, 小孩" + z+ "人");}}}}}P60—2.11public class SqrTest211 {public double sqrt(double a) {double x = a / 2;double z = 0;do {x = 0.5 * (x + a / x);double x1 = 0.5 * (x + a / x);z = x1 - x;if (z < 0)z = -z;} while (z < 0.00001);return x;}public static void main(String[] args) {System.out.println(new SqrTest211().sqrt(10));}}★作业题1、求一个长方体的表面积解1:public class Square {public double area(int x,int y,int z){return (x*y+x*z+y*z)*2;}}public class TrySquare {public static void main(String[] args) {Square mj = new Square();System.out.println(mj.area(20, 10, 3));}}解2:public class Square4 {double mul(int a, int b){return a*b;}double areaxy(int x,int y){return mul(x,y);}double areaxz(int x,int z){return mul(x,z);}double areayz(int y,int z){return mul(y,z);}double area(int x,int y,int z){return (mul(x,y)+mul(x,z)+mul(y,z))*2;}}public class TrySquare4 {public static void main(String[] args) { Square4 mj = new Square4();System.out.println(mj.area(10,20,3));}}解3:public class Square6 {public double a;public double b;public double c;public Square6(int x,int y,int z){a=x*y;b=x*z;c=y*z;}public double area(){return (a+b+c)*2;}}public class TrySquare6 {public static void main(String[] args) { Square6 s=new Square6(20,10,3);double mj=s.area();System.out.println(mj);}}解4:public class Square3 {double mul(int a, int b){return a*b*2;}double areaxy(int x,int y){return mul(x,y);}double areaxz(int x,int z){return mul(x,z);}double areayz(int y,int z){return mul(y,z);}double area(int x,int y,int z){return mul(x,y)+mul(x,z)+mul(y,z);}}public class TrySquare3 {public static void main(String[] args) { Square3 mj = new Square3();System.out.println(mj.area(10,20,3));}}2、输入一个五位数,将各位数提取输出。