java复习小知识(基础不算,有反射,递归)

顺序选择循环,三种
1、至于循环和递归
循环效率更高,但是递归在处理文件递归的时候更为常见快捷
在java中实现传多参
2、public static void main(String[] args)
即数组就是传多参
在scala中用的*符号
def fun4(elements :Int*)={}
3、
1多态(polymorphism)的定义
多态是面向对象的必备特性,
指的是同一接口的不同实现方式,多态允许基类的指针指向子类方法。
在C++中通过虚函数实现。
2多态的作用
1 不必编写每一子类的功能调用,可以直接把不同子类当父类看,
屏蔽子类间的差异,提高代码的通用率/复用率
2 父类引用可以调用不同子类的功能,提高了代码的扩充性和可维护性

4、在针对io流时,字符流速度快,但是有的非明文文件,无法用字符解析
这时候用字节流(要捕获异常)


5、下面的构造方法和静态方法,可以参考上一步的构造时顺序(static在类编译时已经加载)






https://www.cnblogs.com/Essence/p/3961857.html






递归查出文件



以及文件过滤

递归删除

反射
package day1207; import java.lang.reflect.Field;
import java.lang.reflect.Method;
import java.lang.reflect.Modifier; public class Refactor {
public static void main(String[] args) {
try {
Class c=Class.forName("day1207.Demo");//映射一个类,反射
// Field[] fields=c.getDeclaredFields();//可以访问所有字段声明
// for (Field f:fields){//分别访问:字段类型、字段名、字段修饰符
// System.out.println(f.getType()+" "+f.getName()+" "+Modifier.toString(f.getModifiers()));
// }
// Field[] fields1=c.getFields();//只能非私有的访问字段
// for (Field f:fields1){
// System.out.println(f.getType()+" "+f.getName());
// }
//Method[] methods=c.getMethods();//全部的方法包括父类
Method[]methods1=c.getDeclaredMethods();//全部方法,不包括父类
// for (Method m:methods){
// System.out.println(Modifier.toString(m.getModifiers())+" "+m.getName()+""+m.getGenericReturnType());
// }
for (Method m:methods1){//分别拿到:方法访问修饰符、方法名、方法类型
System.out.println(Modifier.toString(m.getModifiers())+" "+m.getName()+" "+m.getGenericReturnType());
}
try {
Demo d=(Demo)c.newInstance();//映射一个类的对象,但是拿不到静态和私有
Demo d2=new Demo();
d.setAcccount("s");
d.setName("张三");
System.out.println(d.getName()+" "+d.getAcccount());
String account="456";
String name="李四";
Method method=c.getMethod("setAcccount", String.class);
//用invoke方法,使用反射给类的对象注值
method.invoke(d,account);
method=c.getMethod("setName", String.class);
method.invoke(d2,name);
//javaoop面向对象aop面向切面
System.out.println(d2.getName());
System.out.println(d.getAcccount());
method=c.getMethod("getName");
System.out.println(method.getName());
} catch (InstantiationException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
}
java复习小知识(基础不算,有反射,递归)的更多相关文章
- java集合小知识的复习
*Map接口 Map<k,v>接口中接收两个泛型,key和value的两个数据类型 Map中的集合中的元素都是成对存在的每个元素由键与值两部分组成,通过键可以找对所对应的值.值可以重复,键 ...
- Java~时间戳小知识
大叔对java时间戳使用的总结 Java里的Date对象有方法setTime,主要是将一个时间戳转成一个日期对象,而这个时间戳的标准是unix标准,即当前时间与1970/1/1相差的毫秒数,记得是毫秒 ...
- Java入门小知识
软件开发什么是软件? 一系列按照特定顺序组织的计算机数据和指令的集合什么是开发? 制作软件 人机交互 软件的出现实现了人与计算机之间的更好的交互交互方式 图形化界面:这种方式简单直观,使用者 ...
- java算法小知识练习(二)
话不多说,直接上题: 题目:两个乒乓球队进行比赛,各出三人.甲队为a,b,c三人,乙队为x,y,z三人.已抽签决定比赛名单. 有人向队员打听比赛的名单.a说他不和x比,c说他不和x,z比,请编程序 ...
- java算法小知识练习
偶尔翻开了以前的练习题,不自觉又想随手敲一遍,虽然有些思想依然是那么老套,但毕竟也算是对知识的巩固 了. 一.题目:有1.2.3.4四个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 具体 ...
- Java Interger小知识
Integer装箱与拆箱 装箱: Integer i = 10; 相当于:Integer i = Integer.valueOf(10); 拆箱: Integer i = 10; //装箱 int t ...
- Java基础小知识(一)
序言:“不积跬步,无以至千里.不积小流,无以成江海.”每一个庞大的知识架构都是由无数个小知识点慢慢积累起来的,没有量变的积累,就没有质变上的飞跃,成功往往离不开积累. 今天就和大家分享一些我在学习J ...
- Java学习之旅基础知识篇:数据类型及流程控制
经过开篇对Java运行机制及相关环境搭建,本篇主要讨论Java程序开发的基础知识点,我简单的梳理一下.在讲解数据类型之前,我顺便提及一下Java注释:单行注释.多行注释以及文档注释,这里重点强调文档注 ...
- 《Java核心技术·卷Ⅰ:基础知识(原版10》学习笔记 第5章 继承
<Java核心技术·卷Ⅰ:基础知识(原版10>学习笔记 第5章 继承 目录 <Java核心技术·卷Ⅰ:基础知识(原版10>学习笔记 第5章 继承 5.1 类.超类和子类 5.1 ...
随机推荐
- 显示等待WebDriverWait
显示等待:WebDriverWait 等待页面加载完成,找到某个条件发生后再继续执行后续代码,如果超过设置时间检测不到则抛出异常 WebDriverWait(driver, timeout, poll ...
- 黄聪:Navicat for MySQL的1577错误解决
今天尝试使用了Windows下的可视化mysql数据库管理工具Navicat,界面清爽,易操作上手,感觉还不错. 不过当连接上mysql后,无论打开任何一个数据库,都会提示:1577 – Cannot ...
- 腾讯互娱开源分布式开发框架Pebble
构建游戏世界的Pebble 愿景:出色的游戏服务器端底层框架 现代游戏项目中,为了让更多的玩家能在一起玩,游戏服务器所需要承载的在线玩家数量越来越多.同时为了让游戏更好玩,越来越多复杂的业务逻辑都 ...
- IE11浏览器卸载
点击卸载程序,然后选择查看已安装的更新. 在当前安装的更新里找到IE11的更新,然后直接右击卸载:这里告诉大家一小窍门哈,我们在搜索栏输入IE就会查找更新啦,不用一个一个去找的哦. 卸载完我们重启一下 ...
- UI“三重天”之selenium--常用API和问题处理(三)
Selenium常用API: 前面两篇示例代码中用到了一些selenium的API方法,例如定位元素的八种方法.访问url.等待.操作浏览器.获取title.点击.清理等等. 有关于selenium的 ...
- php 文件缓存类
//文件缓存类 class FileCache { private $cacheTime = 3600; //默认缓存时间 秒 private $cacheDir = './filecache'; / ...
- Spring boot with Apache Hive
5.29.1. Maven <dependency> <groupId>org.springframework.boot</groupId> <artif ...
- ElasticSearch 基础概念学习(未完)
1.基本定义 摘自百度百科 elasticseaElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.Elastic ...
- Java——复制txt文件
将源文件复制到目标文件,同时输出源文件内容,需要提供一个源文件和目标文件路径参数(如果不存在则自动创建) public static void copyTxt(String sourceFile, S ...
- ASPxGridView删除、添加、修改成功后,弹出提示对话框的方法
分为几步: 1.在aspx文件中添加 function EndCallBack(s, e) { if (s.cpAlertMsg != "" && s.cpA ...