(一)JAVASE基础
一.基础
知识范围:java语法基础、数据类型、控制语句、数组、字符串String。可按照代码进行从上往下边敲边学。
package java_day01; //包 public class day01{ //类 byte x0=1; //成员变量 short x1=1; //成员变量 int x2=1; //成员变量 long x3=1; //成员变量 float x4=1; //成员变量 double x5=1; //成员变量 char x6=1; //成员变量 boolean x7=true; //成员变量 final int x8=1; //成员常量 public static void main(String[] args) { int y0=1; //局部变量 final int y1=100; //局部常量 int[] y3={1,2,3,4,5}; //一维数组 int[][] y4= {{1,2,3},{4,5,6},{7,8,9}}; //二维数组 String y5 ="The is a String type"; //不可变字符串 String y5_1 = new String(y5); //String new创建新字符池 StringBuffer y6 = new StringBuffer(); //可变字符串 StringBuilder y7 = new StringBuilder(); float type_y8 = (float)y1; //强制转化类型 y0++; //只有混合使用(后++--)流程才执行1保存再执行++--操作 int sum_y01 =y1+y0; //+-*/% if ((y0>y1)&(y0<y1)) { System.out.println("全真才真1"); } else if ((y0==y1)&&(y0!=y1)) { System.out.println("全真才真2"); } else { System.out.println("都是假的3"); } switch (y1/10) { //转换 case 10: case 9: case 8: System.out.println("优秀4"); break; default: //违约 System.out.println("不及格"); break; } while (y0<10) { //先条件后执行 y0++; } do { //先执行后条件 y0++; } while(y0<20); /* for (int i = 0; i < y3.length; i++) { //for的增强,打印一维数组 System.out.print(y3[i]); } for (int i = 0; i < y4.length; i++) { //打印二维数组 for (int j = 0; j < y4.length; j++) { if (j==1) { // break 标签; //根据条件停止当前包括以后的活动 continue; //跳过当前条件设置的活动继续执行活动 } System.out.print(y4[i][j]); } } // 《String》 String a = "The is a String type.docx"; String b = "the is a String type.docx"; String[] c = {"1.Xlsx","2.docx","1.xlsx","4.docx"}; String d = new String(a); //new创了新对象 System.out.println(a==b); //判断ab是否在同一字符池 System.out.println(a+b.concat(c)); //连接 System.out.println(a.indexOf("i",4)); //从4索引往后查找最前 System.out.println(a.lastIndexOf("i",4)); //从4索引往前查找最后 System.out.println(a.substring(2,5)); //截取 String[] a1 = a.split(" "); //空格分隔 for (String a2 : a1) { // System.out.println(a2); } System.out.println(a.equals(b)); //字符串类型相等? System.out.println(a.equalsIgnoreCase(b)); //忽略大小写 System.out.println(a.compareTo(b)); //对比a与b大小。 System.out.println(a.compareToIgnoreCase(b)); //忽略大小写 int a1=0; //定义容器 int a3=0; for (String a2 : c) { a2 = a2.toLowerCase(); //大写转小写 if(a2.endsWith("xlsx")) {a1++;} //指定后缀结束 else{a3++;} } for (String a4 : c) { a4.trim(); //去空值(空格) if(a4.startsWith("1")) {a1++;} else if(a4.startsWith("2")) {a3++;} //指定前缀结束 } System.out.println(a1); StringBuilder e = new StringBuilder("the is a StringBuilder"); //可变字符串 System.out.println(e.length()); //StringBuilder长度 System.out.println(e.capacity()); //StringBuilder容量 System.out.println(e.insert(0,"love")); //插入 System.out.println(e.delete(0, 4)); //删除n~m值 System.out.println(e.append(" love")); //在后面追加 System.out.println(e.replace(0, 4, "love 1 ")); //指定n~m值修改 */ System.out.printf("\n%d\r",y0); System.out.println("==================以上显示为测试区================="); System.out.printf("\t\t学习java\n"+"自"+"从\"第%d天\"算起\'第%d天\'结束!\ry0y1是否相等?:%b",y0,y1,y0==y1); } }
二.面向对象
2.1.面向对象框架一
2.2.面向对象框架二
代码
package java地球; // 所属星球 public class java动物世界_鹰 { //鹰群世界 // 1.成员变量: 鹰群世界特征+世界资源 String color = "黑"; // 封装性: 访问范围{private私有(当前类[注意:不能修饰(外部类)])、无修饰[默认](所属星球)、protected(不同星球的子类[注意:不能修饰(外部类)])、public(所有星球)} <--访问控制修饰符加在[类|变量|方法]前面 char Tree_grass = '草'; // 成员变量 public final String Stardust = "星尘"; // final: 成员常量 String insect = "虫"; // 成员变量 static int Tree; // static静态修饰: [[静态|实例]类|变量|方法]可任意使用,但用静态修饰的[类|变量|方法]不能使用[[实例]类|变量|方法]。运行时启动创建,运行结束时自动销毁释放内存。 // 2.成员方法: 鹰界统一动作 void 吃(){ // 3.局部变量: 定义在 方法内,语句内。作用范围结束,变量空间会自动释放。 char days = '百'; System.out.println("鹰正在吃"+insect); System.out.println("吃完后!:\n\t又能活上"+days+"天了,真是充电1分钟用电5小时呀!"); System.out.println("还意外发现神秘人留下的"+Tree+"树枝资源!"); } // 3.成员方法: 鹰界正统血缘 void 鹰界血缘(){ System.out.println("鹰的意志!"); } // 二.对象: 单只(鹰一代) private class 鹰一代 extends java动物世界_鹰{ // 继承性: 鹰一代继承java动物世界_鹰 // 2.1 成员变量: 鹰一代参数 private String name = "鹰一代"; private int age = 80; // 2.2 成员方法: 鹰一代信息 private void 鹰一代信息() { System.out.println("名字:" + name + "\n年龄:" + age + "\n羽毛颜色:" + color); } // 2.3 成员方法: 鹰一代动作 private void 鹰一代捕食动作(int time) { if (time >= 6 & time <= 10) { System.out.println("时间是" + time + "点,鹰正在捕" + insect + "回去喂小鹰"); } else { System.out.println("还在休息"); } } // 3.3 鹰血统 private void 鹰一代血缘(){ System.out.println("血缘: 一代鹰成功获得血缘!"); super.鹰界血缘(); //调用鹰群血缘: 调用前提继承+目标访问控制修饰符不能是私有(有个例外子类能无条件访问父类内所有[变量|方法]) } } // 内部类: 定义在统一类中第一个以后视为外部类 // 鹰二代一号 class 鹰二代1号 extends 鹰一代 { String name = "鹰一代1号"; int age = 20; char Tree_grass = '枝'; //此变量名跟鹰群世界资源Tree_grass一样 private void 鹰二代1号信息(){ System.out.println("名字:" + name + "\n年龄:" + age + "\n羽毛颜色:" + color); } private void 鹰二1号代捕食动作(int a) { super.鹰一代捕食动作(a); // java继承性: 继承鹰一代技能【注意】java 不支持多继承,但支持多重继承。 } private void 鹰二代1号新技能(char day){ //java多态性: 在继承的基础上学到新技能 if (day =='秋'){ System.out.println(day+"天来了"+name+"正在寻找树"+this.Tree_grass+"建窝外部预防冬天!"); // 指定世界资源名 System.out.println(day+"天来了"+name+"正在寻找"+super.Tree_grass+"建窝内部预防冬天!"); //指定当前类资源名 } else if (day=='冬'){ System.out.println(day+"天来了"+name+"正在繁育后代!"); } else if (day=='春'){ System.out.println(day+"天来了"+name+"正在寻找猎物,整个冬天没吃东西了!"); } else if (day=='夏'){ System.out.println(day+"天来了"+name+"正在逃避猎人的捕杀"); } } private int 鹰二代1号存储资源(int a){ Tree = a; return Tree; } private void 鹰二代1号血缘(){ System.out.println("血缘: 鹰二代1号成功获得血缘!"); super.鹰一代血缘(); // 调用鹰一代留下的血缘 } } // 外部类 // 鹰二代二号 class 鹰二代2号 extends 鹰一代{ String name = "鹰二代2号"; int age = 19; void 鹰二代2号信息(){ System.out.println("名字:" + name + "\n年龄:" + age + "\n羽毛颜色:" + color); } void 鹰二代2号建鹰窝(){ System.out.println("鹰二代2号获得"+Tree+"资源成功建立了自己的鹰帝国!"); } private void 鹰二代2号血缘(){ System.out.println("血缘: 鹰二代2号成功获得血缘!"); super.鹰一代血缘(); // 调用鹰一代留下的血缘 } } // 外部类 public static void main(String[] args) { // 主方法->方法->类赋值 java动物世界_鹰 a = new java动物世界_鹰(); // java实例化对象: 初始化世界 java动物世界_鹰.鹰一代 b = a.new 鹰一代(); // 初始化鹰一代对象 java动物世界_鹰.鹰二代1号 c = a.new 鹰二代1号(); // 初始化二代鹰1号对象 java动物世界_鹰.鹰二代2号 d = c.new 鹰二代2号(); b.鹰一代信息(); b.鹰一代捕食动作(7); // 传入实参时间6~10点在捕食 b.鹰一代血缘(); // 一代结束 System.out.println("----------->分隔<----------"); c.鹰二代1号信息(); c.鹰二1号代捕食动作(11); c.鹰二代1号新技能('冬'); // 传入“春夏秋冬”天看看他在干嘛 c.鹰二代1号血缘(); c.鹰二代1号存储资源(100); // 传入资源数 System.out.println("----------->分隔<----------"); d.鹰二代2号信息(); d.鹰二代2号建鹰窝(); d.鹰二代2号血缘(); } }