java基础4.19

1.JAVA 的反射机制的原理。
JAVA反射机制是在运行状态中,对于 任意一个类,都能够 知道这个类的 所有属性和方法;对于任意一个对象,都能够调 用它的任意一个方法;这种 动态获取的信息以动态调用对象的方法的功能称为 java语言的反射机制。

Java反射机制主要提供了以下功能: 在 运行时判断任意一个对象所属的类;在 运行时构造任意一个类的对象;在 运行时判断任意一个类所具有的成员变量和方法;在运 行时调用任意一个对象的方法;生成动态代理。
2.静态嵌套类(Static Nested Class)和内部类(Inner Class)的不同?
内部类类中类(内部类不为同一包的其他类可见,具有很好的封装性),分为 静态内部类成员内部类局部内部类以及 匿名内部类局部内部类写在方法里面用到最多的就是匿名内部类
一. 静态的内部类称为 嵌套类,嵌套类不能直接引用外部类的non-static属性和方法,创建嵌套类对象时不依赖外部类对象;
二. 静态内部类没有了指向外部的引用,和C++的嵌套类很相像了,Java内部类和C++嵌套类最大的不同在于是否具有指向外部引用这点;
三. 在任何非静态内部类中,都不能有静态数据、静态方法或者又一个静态内部类(也就是不止一层),然后静态内部类可以拥有这一切。
3.如何将String类型转化成Number类型。
Integer类valueOf方法可以将String转成Number
4.什么是值传递和引用传递?
对象被值传递,意味着 传递了对象的一个副本。因此, 就算改变了对象副本也不会影响源对象的值。
对象被引用传递,意味着传递的 并不是实际的对象,而 是对象的引用。因此, 外部对引用对象所做的改变会反映到所有的对象上
5.Java的访问修饰符是什么?

在Java编程语言中有 四种权限访问控制符,这四种访问权限的控制符能够 控制类中成员的可见性
public是 公共的, 被public所修饰的成员可以在任何类中都能被访问到。
protected是 受保护的, 受到该类所在的包所保护
friendly是 友好的,即在成员的前面不写任何的访问修饰符的时候,默认就是友好的。所谓友好的,是 对同一package的类友好。
private是私有的 ,即只能在当前类中被访问到 ,它的作用域最小。
6.Java 基础数据类型有哪些?
byte(字节) short(短整型) int(整型) long(长整型) float(浮点型) double(双精度) char(字符型) boolean(布尔型)
7.hashCode()和equals()方法的重要性体现在什么地方?
Java中的 HashMap使用 hashCode()和equals()方法确定键值对的索引,当 根据键获取值的时候也会用到这两个方法。 如果没有正确的实现这两个方法,两个不同的键 可能会有相同的hash值,因此, 可能会被集合认为是相等的。而且,这两个方法也 用来发现重复元素。所以这两个方法的实现对 HashMap的精确性和正确性是至关重要的
8.switch 中用于判断的表达式,可以用哪些数据类型?

一. int
二.char
三.byte
四.short
五.枚举
六. String: PS:对JDK版本有要求,必须为1.7及以上版本
9.char型变量中能不能存贮一个中文汉字?为什么?

Java里采用了Unicode编码格式, Unicode编码中一个char型占用2个字节,而一个汉字也是占用2个字节,所以 可以存储中文汉字
备注:C语言里,char占用1个字节,不用存汉字。
10.静态变量和实例变量的区别?
在语法定义上的区别: 静态变量前要加 static关键字,而 实例变量前则不加
在程序运行时的区别: 实例变量属于某个对象的属性,必须创建了实例对象,其中的实例变量才会被分配空间,才能使用这个实例变量。 静态变量不属于某个实例对象,而是属于类,所以也称为类变量, 不用创建任何实例对象,静态变量就会被分配空间,静态变量就可以被使用了。总之,实例变量必须创建对象后才可以通过这个对象来使用,静态变量则可以直接使用类名来引用。

Original: https://www.cnblogs.com/eafkng/p/16172132.html
Author: 水水头不秃
Title: java基础4.19

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

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

(0)

大家都在看

  • java入门

    1.基础语法 基本数据类型 整数类型 浮点类型 字符类型 布尔类型 类型转换 运算符 算术运算符 关系运算符 逻辑运算符 赋值运算符 三元运算符 字符串运算符 位运算符 分支 if…

    Java 2023年6月5日
    069
  • 笔试小总结

    Arraylist里面存储默认是Object的,不能直接赋值给String类型的变量,需要强转。 值传递和引用传递 class Test { String str = new St…

    Java 2023年6月5日
    051
  • 非易失性规划的原理与实现方法

    常言道,计划不如变化快。计划的制定本身就建基于对未来一定时间范围内的环境条件假设,当计划制定后到执行完成的时间段内,若环境条件发生变化,那么计划也需要进行适当的调整才能满足实际要求…

    Java 2023年6月16日
    075
  • Java:http的post请求(带参数json格式)示例代码

    Java:http的post请求(带参数json格式)示例代码: undefined import cn.hutool.core.collection.CollectionUtil…

    Java 2023年5月29日
    060
  • Linux安装JDK

    一、去java官网下载对应版本的JDK https://www.java.com/en/download/manual.jsp 选择对应版本下载,现在下载好像要注册Oracle账户…

    Java 2023年6月8日
    069
  • 【Java面试手册-基础篇】Java中的main()方法能否被重载?

    答案是肯定的,我们可以重载main()方法,一个Java类可以有任意数量的main()方法,比如下面的 MainDemo 类,就有多个 main() 方法。 package com…

    Java 2023年6月8日
    086
  • 游戏协议安全测试

    测试人员通过第三方工具篡改游戏客户端发送给服务器的协议,达到测试服务器逻辑、挖掘游戏漏洞的一种测试行为,称之为游戏协议安全测试。 协议测试的作用是测试服务器逻辑的漏洞,避免游戏上线…

    Java 2023年6月5日
    0121
  • 从原理层面掌握HandlerMethod、InvocableHandlerMethod、ServletInvocableHandlerMethod的使用【享学Spring MVC】

    前言 HandlerMethod它作为 Spring MVC的非公开API,可能绝大多数小伙伴都对它比较陌生,但我相信你对它又不是那么的生疏,因为你可能没用过但肯定见过。 比如 S…

    Java 2023年6月5日
    064
  • Object o = new Object()占多少个字节?-对象的内存布局

    一、先上答案 这个问题有坑,有两种回答 第一种解释: object实例对象,占16个字节。 第二种解释: Object o:普通对象指针(ordinary object point…

    Java 2023年6月9日
    0114
  • Java8新特性-方法引用

    方法引用的使用场景 我们用Lambda表达式来实现匿名方法。但有些情况下,我们用Lambda表达式仅仅是调用一些已经存在的方法,除了调用动作外,没有其他任何多余的动作,在这种情况下…

    Java 2023年6月8日
    066
  • 手把手教你使用 Spring Boot 3 开发上线一个前后端分离的生产级系统(八)-XXL-JOB 集成与配置

    手把手教你使用 Spring Boot 3 开发上线一个前后端分离的生产级系统(一) – 介绍手把手教你使用 Spring Boot 3 开发上线一个前后端分离的生产级…

    Java 2023年6月8日
    076
  • 面向对象ooDay1

    如何创建类?如何创建对象?如何访问成员? package ooday01; //学生类 public class Student { //成员变量—-对象的属性 String …

    Java 2023年6月13日
    068
  • 单链表(Java–尚硅谷)

    大体结构和C++的链表差不多 补充之前不知道的:链表分两类,带和不带头结点的链表 现在才知道,Java没有像C/C++那样的指针 首先创建一个 LinkList类,然后把链表的各个…

    Java 2023年6月7日
    055
  • JavaSE——调试

    Loading 多动手,多思考,变量和方法写注释!!! idea中ctrl+alt+l失效 解决办法:关闭应用中的快捷键 不换行输出数据 创建包不能添加java 解决,改成中文看看…

    Java 2023年6月6日
    078
  • idea的使用和插件

    1 修改对应的配置信息(缓存)地址 由于我家里的电脑C盘被我设置得超级小,然后Idea默认的各种系统配置,最主要是缓存的地址,修改${idea.home}/bin/idea.pro…

    Java 2023年6月7日
    090
  • Linux 定时任务调度

    定时任务调度 任务调度:是指系统在某个时间执行的特定的命令或程序 任务调度分类 系统工作:有些重要的工作必须周而复始的执行 个别用户工作:个别用户可能希望执行某些程序 cronta…

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