Day15

package com.oop.demo07;public class Person {    //1 赋初值    {       System.out.println("匿名代码块"); //代码块(匿名代码块)    }    //2 static代码块只执行一次    static {        System.out.println("静态代码块");//代码块(静态代码块)    }    //3    public Person() {        System.out.println("构造方法");    }    public static void main(String[] args) {      Person person1=  new Person();      System.out.println("===========================");      Person person2=  new Person();    }}
package com.oop.demo07;//staticpublic class Student {    private  static int age;//静态的变量  多线程    private  double score;//非静态的变量    public void run(){    }    public static void go(){    }    public static void main(String[] args) {       Student s1= new Student();       System.out.println(Student.age);//静态变量直接使用类名访问变量       System.out.println(s1.score);       System.out.println(s1.age);       Student.go();       new Student().run();    }}
package com.oop.demo07;import static java.lang.Math.PI;import static java.lang.Math.random;//静态导入包public class Test {    public static void main(String[] args) {        System.out.println(random());//random随机数        System.out.println(PI);    }}
package com.oop.demo08;//抽象类的所有方法,继承了它的子类,都必须实它的方法public class A extends Action{    @Override    public void doSomething() {    }}
package com.oop.demo08;//abstract 抽象类:类 单继承 多继承(接口)public abstract class Action {    //约束  有人帮我们实现    //abstract 抽象方法只有方法的名字,没有方法的实现(方法体)    public abstract void doSomething();        //1、不能new这个抽象类,只能靠子类去实现它:约束!        //2、抽象类可以写普通方法        //3、抽象方法必须在抽象类中        //抽象的抽象:约束        //思考题?抽象类是否存在构造器        //存在构造器        //抽象类存在的意义:节省代码,提升开发效率}//接口
package com.oop.demo09;public interface TimeService {    void timer();}
package com.oop.demo09;//抽象的思维//interface 定义的关键字 接口都需要有实现类public interface UserService {    //属性:常量 public static final     int AGE=99;    //接口中的所有定义其实都是抽象的 public abstract     void add(String name);     void delete(String name);     void update(String name);     void query(String name);}
package com.oop.demo09;//抽象类:extends//类 可以实现接口 implements 接口//实现了接口中的类,就需要重写接口中的方法//多继承---利用接口实现多继承public class UserServiceImpl implements UserService,TimeService{    @Override    public void add(String name) {    }    @Override    public void delete(String name) {    }    @Override    public void update(String name) {    }    @Override    public void query(String name) {    }    @Override    public void timer() {    }}
接口作用:    1、约束    2、定义一些方法,让不同的人实现    3、方法都是 public abstract    4、常量都为:public static final    5、接口不能被实例化,接口中没有构造方法    6、implements可以实现多个接口    7、必须要重写接口中的方法    8、总结博客//内部类
package com.oop.demo10;public class Outer {    private  int id=10;    public void out(){        System.out.println("这是外部类的方法");    }    //内部类可以获得外部类的私有方法以及私有属性   public  class Inter{        public void in(){            System.out.println("这是内部类的方法");        }        public void getID(){            System.out.println(id);        }    }}
package com.oop;import com.oop.demo06.Person;import com.oop.demo06.Student;import com.oop.demo06.Teacher;import com.oop.demo10.Outer;public class Application {    public static void main(String[] args) {        //类型直接的转换:基本类型转换 父  子        //高                低        Person s1=new Student();        //student这个对象转换成Student类型,我们就可以使用Student类型的方法       Student student= (Student)s1;//高转低强制转换        //子类转换成父类可能会丢失一些方法        Student s2=new Student();        s2.go();        Person person=student;        //内部类主函数        //new        Outer outer=new Outer();        //通过这个外部类来实例化内部类        Outer.Inter inter=outer.new Inter();        inter.in();        inter.getID();    }}/*1、父类引用指向子类对象2、把子类转换成父类,向上转型3、把父类转换成子类,向下转型,需强制转换4、方便方法的调用,减少重复的代码 */

Original: https://www.cnblogs.com/tomn/p/16260407.html
Author: 1号小白学编程
Title: Day15

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/569358/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • java-TestNg-selenium

    随笔分类 – java-TestNg-selenium https://www.cnblogs.com/mashuqi/category/1404222.html Or…

    Java 2023年5月29日
    073
  • 面向对象设计与构造2022第四单元总结

    一、总结本单元作业的架构设计 ​ 这里展示一下第三次作业的类图,相当于整个单元的架构设计。 ​ 首先,通过第四单元手册的学习,我们可以得知UML类图、顺序图和状态图每一种图它的元素…

    Java 2023年6月10日
    073
  • Volatile的学习

    首先先介绍三个性质 可见性 可见性代表主内存中变量更新,线程中可以及时获得最新的值。 下面例子证明了线程中可见性的问题 由于发现多次执行都要到主内存中取变量,所以会将变量缓存到线程…

    Java 2023年6月16日
    074
  • 使用Dom4j、反射自定义实现xml与java对象互转

    一、前言国庆假期临近,工作动力不强。所以写几篇之前项目中自己用到的一些可能有用的东西分享出来。今天分享的是Xml与javaBean互转的自定义实现。先说几种我知道的Xml与java…

    Java 2023年6月14日
    079
  • spring cache之自定义keys的过期时间

    spring @cacheable注解默认不支持方法级别的缓存失效时间,只能通过配置来配置全局的失效时间 如果需要实现对方法级别的缓存支持失效时间机制,有一种比较简单的方法,spr…

    Java 2023年6月16日
    072
  • 【Java分享客栈】一文搞定CompletableFuture并行处理,成倍缩短查询时间。

    前言 工作中你可能会遇到很多这样的场景,一个接口,要从其他几个service调用查询方法,分别获取到需要的值之后再封装数据返回。 还可能在微服务中遇到类似的情况,某个服务的接口,要…

    Java 2023年6月9日
    091
  • AUSTOj1

    以下代码是我根据老师提供的部分源码及自我的认知补充注释 include if(L.length==MAXSIZE) //判断顺序表是否满 return 0; for(int j=L…

    Java 2023年6月15日
    092
  • Idea rest client 使用(全) 真香

    看了网上好多的 idea rest client 讲解,大多都只是讲了它如何如何好,都只是简单的测了一个 json 的接口而已,个人实践了一把,里面还是有挺多坑的,但不得不说,那个…

    Java 2023年6月5日
    086
  • java Future CompletableFuture

    1.1 概述 Future没法直接对多个任务进行链式、组合等处理,而CompletableFuture是对Future的扩展和增强。CompletableFuture实现了Futu…

    Java 2023年5月29日
    096
  • 彻底掌握Makefile(三)

    彻底掌握Makefile(三) 前言 在前面的文章彻底掌握Makefile(一)和彻底掌握Makefile(二)当中,我们简要的介绍了一些常见的makefile使用方法,在本篇文章…

    Java 2023年6月8日
    074
  • 网络编程中TCP基础巩固以及Linux打开的文件过多文件句柄的总结

    1.TCP连接(短链接和长连接) 什么是TCP连接?TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通…

    Java 2023年6月9日
    073
  • spring boot学习

    每一次的加载都会去扫描spring.factories文件里面的类并且放入ioc中 注解 @Async,@EnableAsync 前者告诉spring这是一个异步任务,后者在启动类…

    Java 2023年6月9日
    064
  • Java HashMap

    一些数据结构的操作性能 数组:查找快,新增、删除慢 采用一段连续的存储单元来存储数据 指定下标的查找,时间复杂度为 O(1) 通过给定值进行查找,需要遍历数组,逐一比对给定关键字和…

    Java 2023年5月29日
    097
  • 【JDK】分析 String str=““ 与 new String()

    一、基础概念 为了讲清楚他们的差异,这里先介绍几个概念。 1.1 常量池 所谓常量池:顾名思义就是用来存放一些常量的。该常量是在 编译期被确定,并被保存在已编译的 .class文件…

    Java 2023年6月5日
    093
  • 人类的规划能力有多强大?

    本文章译自OptaPlanner官网上,Geoffrey De Smet先生的博文,链接如下: https://www.optaplanner.org/blog/2015/06/0…

    Java 2023年6月16日
    094
  • Springcloud学习笔记47–@Configuration与@Bean注解的原理以及@Configuration是如何被处理的;@Component和@Bean的区别

    1.@Configuration是如何被处理的 1.1 从SpringApplication应用角度 一般情况下启动SpringBoot都是新建一个类包含 main方法,然后使用 …

    Java 2023年5月30日
    061
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球