最新发布

内部类,成员内部类,局部内部类,匿名内部类

内部类,成员内部类,局部内部类,匿名内部类

内部类在一个类中定义一个类,   在一个A类中定义一个B类,B类就是内部类public class 类名{         修饰符 class 类名{内部类可以直接访问外部类的成员,包括私有,外部类访问内部类的成员必须创建对象 成员内部类在外界使用一个成员内部类,必须创建一个对象来调用方法外部类名.内部类名  对象名=new 外部类对象.new 内部类对象外界使用成员内部类里面的方法,创建对象 外

阅读:266评论:2021-01-28

类,抽象类和接口的关系,运动员和教练的案例,类名和抽象类作为形参和返回值

类,抽象类和接口的关系,运动员和教练的案例,类名和抽象类作为形参和返回值

类和类的关系:继承关系,可以单继承,也可以多继承类和几口的关系:实现关系,可以单实现,也可以多实现,可以在继承一个类的时候再实现一个接口接口和接口的关系:继承关系,可以单继承也可以多继承抽象类和接口的区别:成员区别:抽象类:变量,常量,有构造方法,有抽象方法,也有非抽象方法接口:只有常量,没有构造方法,只要抽象方法关系区别:类和类:继承关系,可以单继承,类与接口:实现,单实现,多实现接口与接口:继承,单继承,多继承设计理练区别:抽象类:对类抽象,包括属性,行为接口:行为抽象,主要是行为运动员和教

阅读:227评论:2021-01-27

抽象类和接口

抽象类和接口

抽象类抽象类和抽象方法必须使用abstract关键字修饰               public abstract class 类名{}    public abstract void 方法名{}  抽象类中不一定有抽象方法,但是有抽象方法的类一定是抽象类抽象类不能实例化,应该参照多态的方式,通过子类对象实例化抽象类的子类:必须是抽象类,或者不是抽象类,必须重写抽象方法抽象类

阅读:157评论:2021-01-26

面向对象继承、多态

面向对象继承、多态

继承继承就是子类继承父类,用extends关键字链接,子类可以有父类的内容,也可以有子类自己的内容public class 子类名 extends 父类名继承中访问变量的访问特点:会先访问子类的局部变量,局部变量没有就会访问子类中的成员变量,最后才会访问父类中的变量,如果都没有就会报错可以通过this关键字来访问本类中的成员变量,可以使用super关键字来访问父类中的成员变量继承中构造方法的访问特点:子类中的构造方法默认都会访问父类中的无参构造方法,因为子类会继承父类中的数据,会使用父类的数据,

阅读:167评论:2021-01-25

反射

反射

反射机制,是指在运行时去获取一个类的变量和方法信息,然后通过获取到的信息来创建对象调用方法的一种机制,可以极大的增强程序的灵活性,程序不用在编译期就完成确定,在运行期可以扩展获取class对象当要通过反射去使用一个类时,首先获取该类的字节码文件,也就是获取class对象1、直接使用类的class属性来获取该类的class对象,例如Student.class将会返回Student类的对应的class对象Class< 类名> c1=类名.class;2、定义一个对象,调用getclass

阅读:289评论:2021-01-21

未命名

未命名

Java中的集合类层次结构

Java中集合主要分为两种:Collection和Map。Collection是List和Set接口的父接口;ArrayList和LinkedList是List的实现类;HashSet和TreeSet是Set的实现类;LinkedHashSet是HashSet的子类。HashMap和TreeMap是Map的实现类;LinkedHashMap是HashMap的子类

blob.png

Collection 接口

Collection 接口定义了一些通用的方法,是List和set的父接口,通过这些方法可以实现对集合的基本操作。定义的方法既可用于操作 Set 接口和List 接口

编写一个简单的程序,演示如何使用 Collection 接口向集合中添加方法:

public static void main(String[] args) {

    ArrayList list1 = new ArrayList();   // 创建集合 list1

    ArrayList list2 = new ArrayList();   // 创建集合 list2

    list1.add("one");    // 向 list1 添加一个元素

    list1.add("two");    // 向 list1 添加一个元素

    list2.addAll(list1);    // 将 list1 的所有元素添加到 list2

    list2.add("three");    // 向 list2 添加一个元素

    System.out.println("list2 集合中的元素如下:");

    Iterator it1 = list2.iterator();  //获取迭达器

    while (it1.hasNext()) {    //获取集合中所有的元素

        System.out.print(it1.next() + "、");    //list2集合中的元素为:one、two、three

    }

}

代码中使用了 Collection 接口的 ArrayList 实现类来调用 Collection 的方法代码创建了两个集合 list1 和 list2,然后调用 add() 方法向 list1 中添加了两个元素,再调用 addAll() 方法将这两个元素添加到 list2 中。接下来又向 list2 中添加了一个元素,最后输出 list2 集合中的所有元素

阅读:391评论:2020-12-06

未命名

未命名

java的多态实现多态的三个条件(前提条件,向上转型、向下转型)1、继承的存在;(继承是多态的基础,没有继承就没有多态)2、子类重写父类的方法。(多态下会调用子类重写后的方法)3、父类引用变量指向子类对象。(涉及子类到父类的类型转换)向上转型 Student person = new Student()将一个父类的引用指向一个子类对象,成为向上转型,自动进行类型转换。此时通过父类引用变量调用的方法是子类覆盖或继承父类的方法,而不是父类的方法此时通过父类引用变量无法调用子类特有的方法。向下转型 S

阅读:381评论:2020-11-17

java object类

java object类

Java Object 类java Object 类是所有类的父类,也就是说 Java 的所有类都继承了 Object,子类可以使用 Object 的所有方法Object 类位于 java.lang 包中,编译时会自动导入,我们创建一个类时,如果没有明确继承一个父类,那么它就会自动继承 Object,成为 Object 的子类,Object 类可以显示继承,也可以隐式继承,以下两种方式时一样的:显示继承:public class Runoob extends Object   &nbs

阅读:362评论:2020-11-16

未命名

未命名

while和do-while循环的区别while先判断后执行,第一次判断为false,循环体一次都不执行do while先执行 后判断,最少执行1次break和continue的作用break: 结束当前循环并退出当前循环体,还可以退出switch语句continue: 循环体中后续的语句不执行,但是循环没有结束,继续进行循环条件的判断(for循环还会i++)。continue只是结束本次循环类和对象的关系类是对象的抽象,而对象是类的具体实例。类是抽象的,不占用内存,而对象是具体的,占用存储空间

阅读:430评论:2020-11-15

Java iterator(迭达器),HashSet集合

Java iterator(迭达器),HashSet集合

java Iterator(迭代器)不是一个集合,它是一种用于访问集合的方法,可用于迭代 ArrayList 和 HashSet 等集合, 是 Java 迭代器最简单的实现迭代器 it 的两个基本操作是 next 、hasNext 和 remove。调用 it.next() 会返回迭代器的下一个元素,并且更新迭代器的状态。调用 it.hasNext() 用于检测集合中是否还有元素。调用 it.remove() 将迭代器返回的元素删除。Iterat

阅读:639评论:2020-11-14