一.基础
知识范围: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++;} //指定前缀结束
}//欢迎加入Java开发交流君样:909038429
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("还在休息");
}//欢迎加入Java开发交流君样:909038429
}
// 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号血缘();
}
}
最新2020整理收集的一些高频面试题(都整理成文档),有很多干货,包含mysql,netty,spring,线程,spring cloud、jvm、源码、算法等详细讲解,也有详细的学习规划图,面试题整理等,需要获取这些内容的朋友请加Q君样:909038429
/./*欢迎加入java交流Q君样:909038429一起吹水聊天