1、接口默认方法的使用

①接口的默认方法可以通过接口实现类对象直接调用。

②接口的默认方法也可以被接口实现类进行覆盖重写

 package cn.intcast.demo17;

 public interface MyInterfaceDefault {
//抽象方法
public abstract void methodAbs();
// void AAA();
public default void methodA(){
System.out.println("this is a default method!");
}
}

接口类1

 package cn.intcast.demo17;

 public class MyInterfaceDefaultA implements MyInterfaceDefault {
@Override
public void methodAbs() {
System.out.println("实现了抽象 方法,AAA;");
}
}

接口实现类

 package cn.intcast.demo17;

 public class Code01Interface {
public static void main(String[] args) {
//创建实现类对象
MyInterfaceDefaultA s = new MyInterfaceDefaultA();
//调用抽象方法,如果实现类当中没有,会向上找接口
s.methodA();
s.methodAbs();
}
}

运行结果图

2、接口的静态方法使用

接口中的静态方法可以通过接口名称,调用其中的静态方法

格式:接口名称.静态方法名(参数)

 package cn.intcast.demo17;

 public interface StaticInterface {
public static void staticmethod(){
System.out.println("this is a static method!");
}
}

静态方法

 package cn.intcast.demo17;

 public class CodeStatic {
public static void main(String[] args) {
StaticInterface.staticmethod();
}
}

运行结果图

3、Collections工具类

 package cn.demo01;

 import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.List; public class Test03 {
public static void main(String[] args){
List<String> aList = new ArrayList<>();
for (int i = 0; i < 5; i++) {
aList.add("a"+i);
}
System.out.println(aList);
//随机排查
Collections.shuffle(aList);
System.out.println(aList);
//逆序
Collections.reverse(aList);
System.out.println(aList);
//顺序
Collections.sort(aList);
System.out.println(aList);
System.out.println(Collections.binarySearch(aList,"a2"));
Collections.fill(aList,"hello");
System.out.println(aList);
}
}

运行结果图

4、ORM思想的简单实验:map表示一行数据,多行数据是多个map;将多个map放到list中(存放表格数据)

 package cn.demo01;

 import java.util.*;

 public class TestTableDate01 {
public static void main(String[] args) {
Map<String,Object> row1 = new HashMap<>();
row1.put("id",101);
row1.put("姓名","张一");
row1.put("age",18); Map<String,Object> row2 = new HashMap<>();
row2.put("id",102);
row2.put("姓名","张二");
row2.put("age",22); List<Map<String,Object>> table1 = new ArrayList<>();
table1.add(row1);
table1.add(row2); for (Map<String,Object> row:table1){
Set<String> keyset = row.keySet();
for (String key:keyset){
System.out.print(key+":"+row.get(key)+"\t");
}
System.out.println();
}
}
}

运行结果图

5、表格数据的存储

 package cn.demo01;

 import java.util.ArrayList;
import java.util.List; public class TestTableDate02 {
public static void main(String[] args) {
User u1 = new User(101,"王大",20,88);
User u2 = new User(102,"王二",23,85);
User u3 = new User(103,"王三",20,84); List<User> list = new ArrayList<>();
list.add(u1);
list.add(u2);
list.add(u3); for (User u:list){
System.out.println(u);
}
}
} class User{
private int id;
private String name;
private int age;
private double grade; public User() {
} public User(int id, String name, int age, double grade) {
this.id = id;
this.name = name;
this.age = age;
this.grade = grade;
} public int getId() {
return id;
} public void setId(int id) {
this.id = id;
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public int getAge() {
return age;
} public void setAge(int age) {
this.age = age;
} public double getGrade() {
return grade;
} public void setGrade(double grade) {
this.grade = grade;
} public String toString(){
return "id:"+id+"\t"+"name:"+name+"\t"+"grade:"+grade+"\t"+"age:"+age+"\t";
}
}

运行结果图

JAVA进阶22的更多相关文章

  1. Java进阶(三)多线程开发关键技术

    原创文章,同步发自作者个人博客,转载请务必以超链接形式在文章开头处注明出处http://www.jasongj.com/java/multi_thread/. sleep和wait到底什么区别 其实这 ...

  2. Java进阶(五十二)利用LOG4J生成服务日志

    Java进阶(五十二)利用LOG4J生成服务日志 前言 由于论文写作需求,需要进行流程挖掘.前提是需要有真实的事件日志数据.真实的事件日志数据可以用来发现.监控和提升业务流程. 为了获得真实的事件日志 ...

  3. Java进阶之路

    Java进阶之路——从初级程序员到架构师,从小工到专家. 怎样学习才能从一名Java初级程序员成长为一名合格的架构师,或者说一名合格的架构师应该有怎样的技术知识体系,这是不仅一个刚刚踏入职场的初级程序 ...

  4. Java进阶2 数组内存和对象的内存管理知识

    Java进阶2 数组内存和对象的内存管理知识 20131028 前言: 在面试的时候,如果是Java的编程语言,也许你认为没有什么可以问的,只能够说明你对于Java了解的太浅了,几乎就是两个星期的节奏 ...

  5. java进阶视频分享

    更多资源和教程请关注公众号:非科班的科班. 如果觉得我写的还可以请给个赞,谢谢大家,你的鼓励是我创作的动力 课程目录介绍 01.开班仪式02.并发编程专题之多线程基础03.并发编程专题之Java内存模 ...

  6. Java 进阶 hello world! - 中级程序员之路

    Java 进阶 hello world! - 中级程序员之路 Java是一种跨平台的语言,号称:"一次编写,到处运行",在世界编程语言排行榜中稳居第二名(TIOBE index). ...

  7. [.net 面向对象程序设计进阶] (22) 团队开发利器(一)简单易用的代码管理工具VSS

    [.net 面向对象程序设计进阶] (22) 团队开发利器(一)简单易用的代码管理工具VSS 本篇要点:在进阶篇快要结束的时候说说源代码管理器,我们的开发,不是一个人可以完成的事,团队协作很重要,而且 ...

  8. Java进阶(五)Java I/O模型从BIO到NIO和Reactor模式

    原创文章,同步发自作者个人博客,http://www.jasongj.com/java/nio_reactor/ Java I/O模型 同步 vs. 异步 同步I/O 每个请求必须逐个地被处理,一个请 ...

  9. Java线程间通信方式剖析——Java进阶(四)

    原创文章,同步发自作者个人博客,转载请在文章开头处以超链接注明出处 http://www.jasongj.com/java/thread_communication/ CountDownLatch C ...

随机推荐

  1. Jsp监听器

    监听器: 监听器就是对内置对象的状态或者属性变化进行监听,并且做出反应的特殊的servlet,在web.xml文件中对监听器进行的配置. 内置对象有两种状态变化:产生.销毁,就是当产生内置对象的时候能 ...

  2. C++中endl和cout语句

    cout是什么?它是一个对象,它代表着计算器的显示器屏幕. 在c++里,信息的输出显示可以通过使用cout和左向‘流’操作符(<<)来完成 这个操作符表面了从一个值到控制台的数据流向! c ...

  3. 安装Cnario Player 3.8.1.156或其他版本时提示"Warning 4154. Adobe Flash Player 13 ...not correctly installed"

    错误提示 安装Cnario Player 3.8.1.156或其他版本时, 有时会出现如下提示: Warning 4154. Adobe Flash Player 13 ...not correctl ...

  4. vue-cli3.0 flexible&px2rem 解决第三方ui组件库样式问题

    背景 在项目使用lib-flexible还有postcss-px2rem实现移动端适配,当我们引入第三方的样式组件库,发现一个问题.那些组件库的样式都变小了. 问题原因 变小的主要原因是第三库 css ...

  5. CodeForces 1151F Sonya and Informatics

    题目链接:http://codeforces.com/problemset/problem/1151/F 题目大意: 给定长度为 n 的 01 序列,可以对该序列操作 k 次,每次操作可以交换序列中任 ...

  6. js 时间格式,加减

    Date.prototype.Format = function (fmt) { //author: rixiao var o = { "M+": this.getMonth() ...

  7. 多线程的休息室WaitSet详细介绍

    1. 所有对象都会有一个wait set,用于存放调用了该对象wait方法之后进入block状态的线程; 2. 线程被notify之后,不一定会立即执行; 3. 线程从wait set中唤醒的顺序不一 ...

  8. ZooKeeper连接并创建节点以及实现分布式锁操作节点排序输出最小节点Demo

    class LockThread implements Runnable { private DistributedLock lock; public LockThread(int threadId, ...

  9. codeforces8A

    Train and Peter CodeForces - 8A Peter likes to travel by train. He likes it so much that on the trai ...

  10. [题解]邮递员寄信(luoguP1629)

    题目来源:luoguP1629 题目描述 有一个邮递员要送东西,邮局在结点1.他总共要送N-1样东西,其目的地分别是2-N.由于这个城市的交通比较繁忙,因此所有的道路都是单行的,共有M条道路,通过每条 ...