JAVA学习
猪猪超人2022
这个作者很懒,什么都没留下…
展开
-
JAVA 枚举
枚举是一种特殊类型格式:修饰符 enum 枚举名称{ 每一行都是罗列枚举类实例的名称}enum Season{ SPRING,SUMMER,AUTUMN,WINTER;}用法:比如开发超级玛丽,要接收上下左右四个方向的信号,控制玛丽的移动如果用常量做信息标志和分类,入参值不受约束,代码相对不够严谨枚举做信息标志和分类,代码可读性好,入参约束严谨每个枚举都是在class内部实现的...原创 2022-02-20 13:51:20 · 338 阅读 · 0 评论 -
JAVA Date类 SimpleDateFormat类 Calendar类
package Experience;import java.util.Date;public class ArrayDemo1 { public static void main(String[] args){ //创建时间日期,此刻的日期时间对象 Date a=new Date(); System.out.println(a); //从1970年1月1日0时0分0秒走到此刻的毫秒值 long time=a..原创 2022-02-18 13:32:10 · 248 阅读 · 0 评论 -
JAVA 简单的Integer解释
8种基本数据类型不是对象,因此JAVA提供了8个对应的包装类Byte Short Integer Long Character Float Double Boolean自动装箱:把基本类型用对应的包装类包装起来,使其具有对象的特质,可以调用toString(),equals()等方法自动拆箱:将Integer,Double等这样引用类型的对象简化为基本类型的数据以Integer举例:package Experience;public class ArrayDemo1 { p原创 2022-02-17 13:41:25 · 547 阅读 · 0 评论 -
JAVA 异常处理
异常:程序出现了不正常的情况try{ 可能出现异常的代码;}catch(异常类名 变量名){ 异常的处理代码;}执行流程:程序从try里面的代码开始执行出现异常,会自动生成一个异常类对象,该异常对象将被提交给JAVA运行时系统当JAVA运行时系统接收到异常对象时,会到catch中去找匹配的异常类,找到后进行异常的处理执行完毕之后,程序还可以继续往下执行package Experience;public class Exc...原创 2022-02-16 21:22:14 · 226 阅读 · 0 评论 -
JAVA Arrays类
Arrays类包含用于操作数据的各种方法public static String toString(int[] a) 返回指定数组的内容的字符串表示形式public static void sort(int[] a) 按照数字顺序排列指定的数组package Experience;import jdk.nashorn.internal.runtime.arrays.ArrayData;import java.util.Arrays;public class ArrayDemo1原创 2022-02-16 15:45:52 · 294 阅读 · 0 评论 -
JAVA StringBuilder类
StringBuilder是一个可变的字符串类,可以看作是一个容器,而容器中的内容是可变的String和StringBuilder的区别:String:内容是不可变的StringBuilder:内容是可变的public StringBuilder()创建一个空白可变字符串对象,不含有任何内容public StringBuilder(String str)根据字符串内容来创建可变字符串对象package Experience;public class Stri...原创 2022-02-16 14:38:55 · 95 阅读 · 0 评论 -
JAVAtoString()方法
toString类是Object类的方法,所有的类都要继承Object,所以所有的类都有这个默认的toString()方法toString()方法的源代码为public String toString() {return getClass().getName() + "@" + Integer.toHexString(hashCode());}package Experience;public class Test { int a=1; ...原创 2022-02-10 19:20:20 · 396 阅读 · 0 评论 -
JAVA匿名内部类
前提:存在一个具体/抽象类或者接口格式: new 类名或接口名(){ 重写方法;};匿名内部类的本质:是一个继承了该类或者实现了该接口的子类匿名对象package Experience;public class Test { private int a=1; public void sum(){ new Number(){ @Override...原创 2022-02-10 17:59:12 · 171 阅读 · 0 评论 -
JAVA内部类
定义:内部类就是在一个类中定义一个类,在类A内部定义一个类B,类B就是内部类访问特点:内部类可以直接访问外部类的成员,包括私有外部类访问内部类成员,要创建对象分类:成员内部类:在类的成员位置局部内部类:在类的局部位置成员内部类:外界如何创建对象使用?外部类名.内部类名 对象名=外部类对象.内部类对象package Experience;public class Tes...原创 2022-02-10 16:47:02 · 164 阅读 · 0 评论 -
JAVA类名和抽象类名作为形参和返回值
方法的形参是类名,其需要的是该类的对象 方法的返回值是类名,其返回的是该类的对象package Experience;public class Cat{ public void act(){ System.out.println("猫抓老鼠"); }}package Experience;public class CatDemo { public void useCat(Cat c){ c.act(); }原创 2022-02-09 17:59:20 · 357 阅读 · 0 评论 -
JAVA接口类
接口实际上也是抽象类,是一种引用数据类型 书写规则:public interface 接口名{}类实现接口:public class 类名 implements 接口名{}接口不能实例化,但可以参照多态的方式,实现接口多态来实例化 接口可以实现多继承,而类和类之间只能实现单继承,接口弥补了这个缺陷 接口包含两部分常量 抽象方法接口中的常量都默认加上public static final,记住是常量,不能在实现类中赋值 接口类中的方法都是抽象方法,...原创 2022-02-09 14:00:49 · 338 阅读 · 0 评论 -
JAVA抽象类
一个没有方法体的方法称为抽象方法,类中有抽象方法,必须定义为抽象类 抽象类和抽象方法必须用abstract关键字修饰:public abstract class 类名{}public abstract void 方法名();抽象类不能实例化,抽象方法本身没有实现任何方法语句,这个抽象方法本身是无法实行的,所以这个类也不能实例化 因为抽象类本身设计成只用于被继承,因此抽象类可以强迫子类必须实现其定义的抽象方法,相当于子类必须重写这个方法 所以抽象类的子类,要么重...原创 2022-02-08 17:29:15 · 118 阅读 · 0 评论 -
JAVA多态
动物有很多种,比如猫,狗,这就是动物的多态当第一个类有很多子类时,并且这些子类都重写了父类种的某个方法,那么当把子类创建的对象的引用放到一个父类的对象中,就得到了该对象的一个上转型对象多态的前提和体现:有继承/实现关系有方法重写有父类引用指向对象,例如:Animal a=new Cat();package Experience;public class Animal { private String name; private int age=10;原创 2022-02-08 15:57:45 · 234 阅读 · 0 评论 -
JAVA static关键字
static是静态,全局的意思,可以修饰成员方法,成员变量特点:被类的所有对象共享使用类名.变量名或类名.方法名调用 静态成员方法只能访问静态成员变量和方法package Experience;public class Test { static String name="二哈"; int grade=10; Test(){ } public static void act(){ System....原创 2022-02-08 14:24:18 · 206 阅读 · 0 评论 -
JAVA final修饰符
final表示最终,最后可以修饰类 方法 变量修饰类:那么这个类不可以被继承修饰方法:不能修饰构造方法,其方法不能被重写修饰变量:基本类型变量不能再被赋值改变,引用类型可以被赋值改变...原创 2022-02-08 09:43:56 · 74 阅读 · 0 评论 -
JAVA继承举例
猫:成员变量名字,年龄 构造方法 带参构造方法 成员方法:set/get Name/Age方法 猫抓老鼠()狗:成员变量名字,年龄 构造方法 带参构造方法 成员方法:set/get Name/Age方法 狗看门()二者共性:成员变量名字,年龄 构造方法 带参构造方法 set/get Name/Age方法定义动物类package Experience;public class Animal { private String name; private int age;原创 2022-02-07 18:03:07 · 362 阅读 · 0 评论 -
JAVA方法重写
规则:子类继承了父类的某个方法,那么子类有权重写这个方法,子类定义的这个方法类型和父类的方法类型一致或者是父类的方法的类型的子类型,并且这个方法的名字,参数,参数类型和父类的方法完全相同目的:子类可以通过方法的重写把父类的状态和行为改变为自身的状态和行为....原创 2022-02-06 13:40:56 · 323 阅读 · 0 评论 -
JAVA继承中的访问和super
优先级:子类局部变量>子类成员变量>父类成员变量测试代码:package Experience;public class Test { public static void main(String args[]){ Teacher te=new Teacher(); te.act(); }}package Experience;public class Student { private String name; pr原创 2022-01-23 13:44:49 · 217 阅读 · 0 评论 -
JAVA集合
存储可变长度的数据时,数组不满足我们的需求,也适应不了变化的需求所以引入了集合集合的特点是:提供一种存储空间可变的存储模型,存储的数据容量可以发生改变集合类:ArrayList<E>,<E>是一种特殊的数据类型,泛型package Experience;import java.util.ArrayList;public class SpliceString { public static void main(String[] args){原创 2022-01-23 13:06:36 · 239 阅读 · 0 评论 -
JAVA字符串翻转
package Experience;import java.util.Scanner;public class SpliceString { public static void main(String[] args){ Scanner a=new Scanner(System.in); System.out.println("请输入一个字符串:"); String b=a.nextLine(); System.out.prin.原创 2022-01-23 08:40:48 · 167 阅读 · 0 评论 -
JAVA 统计字符串的个数
使用charAt(int index)方法先遍历获取每个字符,然后判断每个字符是大小写字母还是字.注意:判断是否为数字时,0为字符0,加'0'的判断是否为字符0package Experience;import java.util.Scanner;public class iterateString { public static void main(String args[]){ Scanner str=new Scanner(System.in);原创 2022-01-22 18:37:26 · 993 阅读 · 0 评论 -
JAVA 遍历字符串方法charAt()
String类中的public char charAt(int index)方法返回索引处的char值使用for循环遍历输出字符串package Experience;import java.util.Scanner;public class iterateString { public static void main(String args[]){ Scanner str=new Scanner(System.in); String a=str.原创 2022-01-22 17:42:17 · 354 阅读 · 0 评论 -
JAVA简单的用户登录
package Experience;import java.util.Scanner;public class denglv { public static void main(String args[]) { String usn = "itest"; String pwd = "it123"; for (int i = 0; i < 3; i++) { Scanner a = new Scanner(Syste.原创 2022-01-22 16:55:08 · 192 阅读 · 0 评论 -
JAVA字符串的比较
package Experience;public class Stringequal { public static void main(String args[]){ //除了byte short int long double float char boolean的基本类型 //还有类,数组,接口三种引用数据类型,String属于引用数据类型中的类类型 //引用数据类型的形参改变,也会影响实际参数的改变 //a和b在栈内存.原创 2022-01-22 15:30:55 · 93 阅读 · 0 评论 -
JAVA String类简单创建和使用
String类在java.lang包下,使用的时候不需要导包String类代表字符串,如"abc",JAVA程序中所有的双引号字符串都是String类的对象而且字符串不可变,其值在创建后不可被更改,但是可以被共享package Experience;public class StringLearn { public static void main(String args[]){ String a=new String(); System.out.pr原创 2022-01-22 14:20:29 · 352 阅读 · 0 评论 -
JAVA的三种给对象赋值的方式
第一种,直接赋值的方式package Experience;public class Teacher { String name; int age; public void act(){ System.out.println("大家好,我是田老师!"); }}package Experience;public class Test { public static void main(String args[]){ T原创 2022-01-22 00:00:00 · 12414 阅读 · 1 评论 -
JAVA private封装
是一个权限修饰符 可以修饰成员变量和成员方法 作用是保护成员不被别的类使用,被private修饰的成员只在本类中才能访问所以如果使用了private封装,要被其他类使用,需要相应的操作提供"get变量名()"方法,获取成员变量的值,用public修饰 提供"set变量名(参数)"的方法,用于设置成员变量的值,方法用public修饰测试类package Experience;public class Learn02 { public static void main(Strin原创 2022-01-20 19:39:03 · 386 阅读 · 0 评论 -
JAVA 买飞机票
机票价格按淡季旺季,头等舱和经济舱收费,输入机票原价,月份和头等舱或经济舱 规则:旺季(5-10月)头等舱9折,经济舱8.5折,淡季(11-第二年4月)头等舱7折,经济舱6.5折package Experience;import java.util.Scanner;public class Learn01 { public static void main(String[] args) { Scanner src=new Scanner(System.in);原创 2022-01-20 13:49:39 · 750 阅读 · 0 评论 -
JAVA百钱百鸡问题
公鸡5文钱一只,母鸡三文钱一只,小鸡1文钱3只一百文钱能买多少公鸡,多少母鸡,多少小鸡5x+3y+z/3=100x+y+z=1000<=x<=200<=y<=330<=z<=100原创 2022-01-20 12:41:24 · 302 阅读 · 0 评论 -
JAVA不死神兔(斐波那契数列问题)
有一对兔子,从出生的第三个月起每个月都生下一对兔子,小兔子长到第三个月后每个月又生一对兔子,假设兔子不会死亡,求第二十个月有多少对兔子斐波那契数列指的是这样一个数列1,1,2,3,5,8,13,21,34,55……从第三项开始,每一项都等于前两项之和。package Experience;public class Learn01 { public static void main(String[] args) { int[] arr=new int[20];原创 2022-01-19 19:15:09 · 305 阅读 · 0 评论 -
方法重载的定义和调用
多个方法在同一个类种 多个方法具有相同的方法名 多个方法的参数不同,类型不同或者数量不同package Experience;public class Learn01 { public static void main(String[] args) { System.out.println(getMax(10,20)); System.out.println(getMax((byte)10,(byte) 20)); System.out.println(原创 2022-01-19 17:16:53 · 127 阅读 · 0 评论 -
带参数的方法定义与调用
调用方法的两种格式方法名(参数);数据类型 变量名=方法名(参数);只使用第一种方法,当返回参数时,相当于在main方法里直接加入了true;这个语句,没有任何的操作所以,需要一个变量来接收这个返回值参数,进行相关的操作如下面代码定义一个max变量接收getMax()方法返回的值,并用System输出语句输出到控制台,可以很清楚的看到结果package Experience;import java.util.Scanner;public class Learn01 { .原创 2022-01-19 16:00:38 · 570 阅读 · 0 评论 -
方法的定义和调用
方法和C语言的函数一样,没有什么可以说的package Experience;public class Learn01 { public static void main(String[] args){ lsea(); } public static void lsea(){ int number=10; if(number%2==0){ System.out.println("true");原创 2022-01-19 14:38:40 · 149 阅读 · 0 评论 -
JAVA数组的遍历和求其中的最大值
1.数组的遍历package Experience;import java.util.Scanner;public class Learn01 { public static void main(String[] args){ int [] arr2={1,2,3};//数组静态初始化 for(int i=0;i<=arr2.length;i++) System.out.println(arr2[i]); }}原创 2022-01-19 12:08:10 · 553 阅读 · 0 评论 -
数组中常见的问题,索引越界和空指针异常
1.索引越界索引越界是访问了数组中不存在索引对应的元素,造成索引越界问题package Experience;public class Learn01 { public static void main(String[] args){ int [] arr=new int[3];//数组动态初始化 int [] arr2={1,2,3};//数组静态初始化 System.out.println(arr[3]); }}结果为原创 2022-01-19 11:41:49 · 1970 阅读 · 0 评论 -
JAVA Random随机数的简单使用
导包import java.util.Random;创建对象Random r=new Random();获取随机数int number = r.nextInt(10);//取值范围[0,10)应用:随机获取10个随机数package Learn01;import java.util.Scanner;import java.util.Random;public class Experiences { public static void main(String[]原创 2022-01-18 18:50:01 · 165 阅读 · 0 评论 -
JAVA珠穆朗玛峰
一张纸的厚度为0.1毫米,珠穆朗玛峰的高度为8844.43米=8844430毫米,纸要折叠多少次才能达到这个高度package Learn01;import java.util.Scanner;public class Experiences { public static void main(String[] args) { Scanner sc=new Scanner(System.in); System.out.println("请输入一个数:"); int a=sc.n.原创 2022-01-18 18:14:52 · 574 阅读 · 0 评论 -
JAVA水仙花,输入一个数求这个数以内的的水仙花数
自己输入一个三位数数,求出这个三位数以内的水仙花数个位的三次+十位的三次+百位的三次=原数,便为水仙花数个位数怎么取,如372372/10=37---2,所以只需要取余372%10=2同样,十位数372/10=37---237%10=7百位数可以直接372/100=3package Learn01;import java.util.Scanner;public class Experiences { public static void main(String[]原创 2022-01-18 17:55:34 · 170 阅读 · 0 评论