Java基础部分

Java基础部分(直说重点部分)

 1、"=="和 equals 方法究竟有什么区别?

  ==如果判断值类型的话,判断内容是否相同。如果判断引用类型则是判断内存地址是否相同

 2静态变量和实例变量的区别?

   静态变量使用时,通过类名.名称,实例变量必须要初始化后才能使用。实例变量是实例化后才会分配空间,而静态变量当类加载时会分配空间。

3是否可以从一个 static 方法内部发出对非 static 方法的调用?

  非static方法可以访问static方法.

  static方法不能访问非static方法

4、Integer  int 的区别

    Integer 是引用类型,默认值是null。而int是是值类型默认值是0

5、请说出作用域 public, private, protected,以及不写时的区别

  这四个作用域的可见范围如下表所示。

  说明:如果在修饰的元素上面没有写任何访问修饰符,则表示 friendly。

6、重载与重写区别?

  重载是同一个类中,方法名称相同, 但是参数或个数不同。与返回值没有关系。

  重写是在多个类中, 产生继承关系。父类与子类的方法方法必须相同。

7、接口与抽象类的区别?

  区别:定义接口的关键字是:interface 而定义抽象类的关键字是:abstract。

    接口中成员不能有私有, 抽象类可以。

    接口中定义的成员, 是finl public static 类型, 抽象类没有。

    接口中的不能有普通方法, 抽象类中可以。

  相同:

    两个都不new,但是 接口与抽象类是面向对象必备知识,设计模式、重构代码有必然作用

8、 final, finally, finalize 的区别。

  final 用于声明属性,方法和类,分别表示属性不可变,方法不可覆盖,类不可继承。
  finally 是异常处理语句结构的一部分,表示总是执行。

  finalize 是 Object 类的一个方法,在垃圾收集器执行的时候会调用被回收对象的此方法,可

  以覆盖此方法提供垃圾收集时的其他资源回收,例如关闭文件等。 JVM 不保证此方法总被

  调用

9、Java的垃圾回收机制

  Java的垃圾回收机制是Java虚拟机提供的能力,用于在空闲时间以不定时的方式动态回收无任何引用的对象占据的内存空间。

  System.gc()

  Runtime.getRuntime().gc()

10、 反射的优缺点?

  反射:就是正在运行动态读取这个类的完整信息。

  优点:java的反射机制就是增加程序的灵活性、

  缺点:缺点:(

   (1)性能问题:使用反射基本上是一种解释操作,用于字段和方法接入时要远慢于直接代码。因此反射机制主要应用在对灵活性和扩展性要求很高的系统框架上,普通程序不建议使用。

   (2)使用反射会模糊程序内内部逻辑:程序员希望在源代码中看到程序的逻辑,反射等绕过了源代码的技术,因而会带来维护问题。反射代码比相应的直接代码更复杂。

11、那些地方用到了反射?

   例如: jdbc、Java常用框架、jdk的动态代理、android的加载布局文件

12、java  中有几种类型的流?JDK 为每种类型的流提供了一些抽象类以供继承, 为每种类型的流提供了一些抽象类以供继承,请说出他们分别是哪些类? 

  字节流,字符流。字节流继承于 InputStream OutputStream,字符流继承于InputStreamReaderOutputStreamWriter。在 java.io 包中还有许多其他的流,主要是为了提高性能和使用方便。

13、字节流与字符流的区别

字节流什么都存,字符流只能存放中文

其他部分

1、xml与json的区别

  不同:

    xml是重量级、json是轻量级

    xml比较占带宽、json占带宽小,易于压缩

    json在webservice 用的比较少、xml用的较多

  相同:

    两者都用在项目交互下  例如  移动app接口用的就是json、在web项目中与其他项目对接用xml较多。

    json常用解析方法 gson、jsonobject、jackson等 xml dom sax pull 解析

2、redis使用场景

  redis是 缓存数据库,能够减轻数据库访问操作,比关系数据访问效率高!  使用场景: 发送短信验证码计时、token生成。

3、JavaWeb安全编程

1、xss攻击

什么恶意执行javascript代码或html代码 例如获取用户cookie、论坛恶意留言

 4、sql注入

 5 尽量少用隐藏域、或不要暴露敏感数据信息。

  例如:很多网站忘记密码, 通过手机号码找回,前面是手机号码+图像验证码。点击下一步是讲上一个页面的手机号放到隐藏域中。发送验证码取隐藏域里面的值。这样我讲隐藏域里面的值修改自己的手机。就可以破解别人的账号密码

6、App接口设计一定要规范

  最好项目更新时最好用 网站安全扫描工具扫描一下。return instance;

时间: 2024-10-10 19:29:00

Java基础部分的相关文章

-Java基础-Java介绍

声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权:凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记. java的介绍 1.1java简介 Java是一种可以撰写跨平台应用程序的面向对象的程序设计语言. 它最初被命名为Oak,目标设定在家用电器等小型系统的编程语言,来解决诸如电视机.电话.闹钟.烤面包机等家用电器的控制和通讯问题.由于这些智能化家电的市场需求没有预期的高,Sun放弃了该项计划.就在Oak几近失败之时,随着互联网的发展,Sun看到了Oak在计算机

第3篇-JAVA基础

第3篇-JAVA基础 每篇一句 :目标是给梦想一个期限,行动与坚持就是实现梦想的过程 初学心得: 遇到困难或问题,它不是休止符,而是引向你如何解决问题的标识 (笔者:JEEP/711)[JAVA笔记 | 时间:2017-03-26| JAVA基础 Ⅱ] 上篇回顾 上篇文章中我们学习了JAVA底层的运行机制与深入剖析以及解释其中JAVA基础代码的含义 本篇文章将JAVA基础Ⅱ全面剖析解释,因为JAVA基础非常重要,务必要牢记知识点!!! 1.JAVA基础语法格式 JAVA采用unicode编码 1

Java基础学习第五天——方法与数组

文档版本 开发工具 测试平台 工程名字 日期 作者 备注 V1.0 2016.02.24 lutianfei none 第三章Java基础语法 方法 方法就是完成特定功能的代码块,即函数. 格式: 修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2-) { 函数体; return 返回值; } 详细解释: 修饰符,目前就用public static,后详解. 返回值类型:就是功能结果的数据类型. 方法名:符合命名规则即可,方便我们的调用. 参数: 实际参数:就是实际参与运算的.

2.35 Java基础总结①抽象②接口③设计抽象类和接口的原则④接口和抽象类的区别

java基础总结①抽象②接口③设计抽象类和接口的原则④接口和抽象类的区别 一.抽象 abstract作用:不能产生对象,充当父类,强制子类正确实现重写方法和类相比仅有的改变是不能产生对象,其他的都有,包括构造.属性等等任何一个类只要有一个抽象的方法就成了抽象类 抽象方法 public abstract A();①方法是抽象的,这个类也是抽象的:②子类必须重写抽象方法,除非子类也是抽象类 抽象类可以没有抽象方法,但一般不这么设计 二.接口 interface 接口也是Java的一种引用数据类型(J

java基础 计算今天距本月最后一天还剩多少天

Calendar  c = new GregorianCalendar();   //GregorianCalendar 是Calendar的一个具体子类,提供了世界上大多数国家/地区使用的标准日历系统. GredorianCalendar 是一种混合日历,可由调用者通过调用setGregorianChange()来更改起始日期. Calendar c = new  Calendar.getInstance(TimeZone.getTimeZone("GMT+08:OO"));  //

Java基础语法

Java的基础语法中包含字符集.标识符和关键字.变量和常量.语句.注释.运算符和表达式这些基本要素. 一.关键字 编程语言都有一些保留的单词,用于定义该语言,这些单词对于编译器有特殊含义,不能作为标识符使用: Java中的true.false.null这三个保留字,不能作为标识符使用,对于编译器有特殊含义: main是一个用于描述Java程序开始方法的特殊名称,它不是一个关键字: abstract 抽象 boolean 逻辑运算: 布尔 break 打破: 断开 byte 字节: case 例,

JAVA基础——重新认识String字符串

深入剖析Java之String字符串 在程序开发中字符串无处不在,如用户登陆时输入的用户名.密码等使用的就是字符串. 在 Java 中,字符串被作为 String 类型的对象处理. String 类位于 java.lang 包中.默认情况下,该包被自动导入所有的程序. 创建 String 对象有三种方法 String s1="我是字符串1"; String s2=new String();//创建一个空的字符串对象 String s3=new String("我是字符串2&q

第2篇-JAVA基础

第2篇-JAVA基础 每篇一句 :无论处在任何领域中,即使是在小的事情,都要让每一天有所价值 初学心得: 在学习的过程中,错误是很宝贵的,它一笔"财富",更是一种"价值" (笔者:JEEP/711)[JAVA笔记 | 时间:2017-03-24 | JAVA基础] JAVA基础 回顾 在上一篇文章中,最后提到两个问题, 相信读者们已经提前超额完成了"任务" 下面跟着笔者的思路,深入掌握JAVA底层的运行机制 JAVA运行机制 (重中之重) JAV

第4篇-JAVA基础

第4篇-JAVA基础 每篇一句 :世界上本没有完美,但是我们从未放弃追求完美 初学心得: 乐于挥霍的时间,都不能算作浪费 (笔者:JEEP/711)[JAVA笔记 | 时间:2017-04-01| JAVA基础 Ⅳ] 程序运行流程 (1) 顺序结构 (2) 分支结构 (3) 循环结构 (4) break 与 continue关键字 (5) 数组 (6) 方法 1.顺序结构 如果代码里没有流程控制,程序是至上而下一行一行执行的 一条语句执行完之后继续执行下一条语句,直到程序的最后 2.分支结构 顺

JAVA基础汇总及例题详解

java语言的一个核心: jdk, java development kits---面向开发人员 jre, java Runtime Environment---服务器上 java虚拟机---(以字节码为指令的CPU)---*.class java编译器-->字节码-->类加载器进行验证-->虚拟机运行 垃圾回收机制 public class ...{ int a = 1; } c/c++垃圾回收由程序员去运行 java编程语言(一门纯面向对象)的特点: 1, 面向对象  封装  继承