当前位置:网站首页 > Java基础 > 正文

java从基础到放弃



Java从零到放弃

环境搭建

下载地址https://www.jetbrains.com/idea/download/#section=windows

取消大小写敏感

image-20210413102118467

添加中文语言插件

image-20210413102937530

输出hello world

常用的快捷键

F7步入 F8步过 F9运行到下一个断点 ALT+F8评估表达式 Ctrl + F查找字符串

双击Shift 查找任何内容,可搜索类、资源、配置项、方法等,还能搜索路径

Ctrl + N 按类名搜索类

Ctrl + F12 查看当前类结构

Ctrl + H 查看类的层次关系

Alt + F7 查找类或方法在哪被使用

基础知识

JAVA反射机制

反射的概念,就是在动态运行状态的时候,对于任意一个类,都能够获取到这个类的所有属性和方法,对于任意一个对象,都能调用它的任意方法和属性(包括私有),即类对我们而言是完全透明的

想要使用反射机制,必须先获取到该类的字节码文件对象.class,通过字节码文件对象,都能够通过该类中的方法获取到我们想要的所有信息,每一个字节码文件也就对应着一个class类型的对象,获取字节码文件对象的三种方式:

比如:

上面是一个很基础的类,但是如果User类不是我们自己定义的,我们在外部无法看到里面有什么内容,需要引入反射机制

在java中所有东西都是对象,而User()和Student()又是Class的实例对象,得到class

上面的c1,c2,c3都是Class类的实例,代表的也都是User类,不仅是自定义的类,谁只是基本的基础数据类型都可以使用Class,比如

总结为获取Class的方法就是以下三种方法

  1. 对象名.getClass 通过对象名获取 比如上面的user.getClass
  2. 类名.class 通过类名获取 比如上面的User.class
  3. Class.forName 通过路径

获取类的方法

然后传一下User

image-20210414195123214

反射获取类的方法

  1. getMethod(String name) 返回一个Method对象,name是指定的方法名,
  2. getMethods() java从基础到放弃 获取所有public函数 包括父类继承,返回Method[]数组
  3. getDeclaredMethods() 获取所有该类自己声明的方法,无论任何访问权限
  4. getDeclaredMethod(String name)返回一个Method对象,指定对应的声明方法

获取类的所有属性

image-20210414195843511

获取指定属性

image-20210414201941254

在User里面添加了getAge函数,然后可以发现我们成功修改user的信息

  1. getField(String name) 返回一个名字是name的Field对象,但是要求是public
  2. getFields() 获取所有puclic的成员变量的信息
  3. getDeclaredField(String name) 获取自己声明的指定的成员变量name

获取类的构造方法

image-20210414202630524

  1. getConstructor() 返回一个Constructor公共构造方法对象
  2. getConstructors() 返回所有构造方法
  3. getDeclaredConstructor() 返回一个Constructor对象,该对象反映此Class对象所表示的类或接口的指定构造方法
  4. getDeclaredConstructors() 返回一个Constructor数组,反应此类声明的所有构造方法,包括所有类型

版权声明


相关文章:

  • java基础面试题20182024-10-17 22:26:01
  • 0基础学java文本2024-10-17 22:26:01
  • java作业零基础2024-10-17 22:26:01
  • java大学基础胶层2024-10-17 22:26:01
  • 07java基础教程2024-10-17 22:26:01
  • java基础小白竖屏2024-10-17 22:26:01
  • 只会java基础简历怎么写2024-10-17 22:26:01
  • java基础考试及解析2024-10-17 22:26:01
  • java基础的教学目标2024-10-17 22:26:01
  • java100个基础小程序2024-10-17 22:26:01