import java.io.*;

public class Print{
public static void main(String[] args) throws IOException
{
//老版本的输出输入流 /*
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str;
System.out.println("print");
do{str=br.readLine();System.out.println(str);}while{!str.equals("end")}//br.readLine标准读取一个字符。str.equals读取str字符串
*/ //Java5新特性Scanner类输入
Scanner s = new Scanner(System.in);
String str;
System.out.println("输入");
if(s.hasNext()){String str1=scan.next();System.out.println("输出"+str)};//hasNext判断是否有输入
//next();获取字符
s.close();//关闭
/*
next()
1、读到有效字符后结束输入
2、对于空白字符,next()会自动去掉
3、next对于空白符全部去除不要,所以字符串没有空格
4、只有输入字符之后,后面的那些空白符才是结束的意思
nextLine():
1、按回车键结束
2、可以有空格,并且会输出空格 finally关键字
无论是否异常发生finally代码块中的代码都执行 声明自定义异常
1、所有的异常都是Throwable的子类
2、如果想写一个检查类,则需要继承Exception类
3、如果是运行时异常类,要继承RuntimeException类
*/
//java不支持多继承但是支持多重继承a->b->c
implements关键字可以变相实现多继承
public interface A{}
public interface B{}
public class C implements A,B{}
super 关键字
super.方法 可以在子类当中调用父类的此方法
final 关键字
final 修饰的类不能继承。修饰方法的话,此方法不能重载
声明方法
修饰符(public/private/default/protected) final 返回值类型 方法名(){//方法体} }
}

抽象类

abstract class来定义抽象类

抽象类不能直接用,需要继承重写再来使用子类

抽象方法

方法名后面跟着的是分号;不是{}

抽象方法必须在抽象类中

继承抽象方法需要重写如果不重写用不了

java public abstract double computePay();//抽象方法

封装

建议属性设置为私有

接口

通常用interface来声明

接口类中每一个类都是抽象类

接口类中的类都是隐式的

接口的方法都是公有的

接口的名字和文件名相同

接口没有主函数,只接写方法

java 文件名:Test.java public interface Test{ public void setTest(String name); }

接口的实现

如果要实现接口的话,需要把接口的方法都重写

不然就不能实现,类改为抽象类

使用关键词implements

implements要在class之后

java public class 类名 implements 接口类名{} //访问权限 class 类名 implement 接口类名{}

标记接口

在接口类里面如果没有任何方法的接口就是标记接口

枚举

values()//返回枚举中所有值

ordinal()//返回枚举的索引

valueOf()//返回指定枚举常量

异常

FileInputStream()//打开文件

FileNotFoundException 变量名 //找不到文件报错

FileNotFoundException是Exception的子类 //可以使用Exception来代替它

finally

java try{}catch(){}finally{} //catch()是try中的执行出现错误才会执行 //finally{}无论是否有错误都执行

java try{}catch(){}finally{}

最新文章

  1. Java批处理ExecutorService/CompletionService
  2. 谈I/O模型
  3. Spark MLlib - Decision Tree源码分析
  4. Java for LeetCode 145 Binary Tree Postorder Traversal
  5. 在IE地址栏输入JS的有趣效果
  6. log4j示例
  7. jquery写的tab切换效果 非常简单
  8. lua IDE for cocos2d-x development
  9. 自己动手实现Expression翻译器 – Part Ⅱ
  10. CC.NET模板简化配置
  11. Codeforces Round #371 (Div. 2) C 大模拟
  12. JavaScript var的作用域和提升
  13. vue keepalive 动态设置缓存
  14. docker compose 服务启动顺序控制
  15. 转 spring注解式参数校验
  16. 配置使用OpenCV静态链接库
  17. Centos 中 vi 和vim 的区别
  18. JNUOJ 1180 - mod5
  19. 课堂笔记:HTML----------图片热点
  20. 【转】ASP.NET Core 快速入门(环境篇)

热门文章

  1. 了解ASP(三) -- Cookie, Session, Application
  2. 在linux 下如何快速创建环境
  3. k8s安装metrics-server
  4. Java基础学习:9、访问修饰符
  5. uni-app --vue3--TypeScript 微信小程序开发
  6. 51电子-STC89C51开发板:开发包
  7. pip install -r 是什么意思
  8. SOAMANAGER 500 ERROR
  9. 【uni-app】第2节HBuilderX未检测到手机问题(今天终于找到解决办法了,亲测可以)
  10. Twenty-six