首页 > 编程语言 >java基础问答

java基础问答

时间:2023-03-18 17:45:51浏览次数:41  
标签:short Java s1 float 基础 static java 问答

目录

什么样的标识符是合法的

a) 由字母、数字、_和$组成,长度不限。其中字母可以是大写或小写的英文字母,数
字为0到9。
b) 标识符的第一个字符不能是数字。
c) 标识符区分大小写。
d) 标识符不能包含空格。

Java有几种基本数据类型

a) byte,short,int,long,char,boolean,float,double

&&和||区别

&&和||是短路与,短路或,当左边的表达式能判断当前结果,则不判断右边的表
达式。

break,continue区别

a) break结束最近的一个循环,continue结束当次循环,进入下次循环。

类的命名规则是什么

a) 如果类名使用拉丁字母,那么名字的首写字母使用大写字母。
b) 类名最好见名得意,当类名由几个单词复合而成时,每个单词的首写字母使用大写。

java关键字区分大小写吗

a) java关键字一律小写。所以无所谓区分大小写,大写的不是关键字。

解释一下static关键字 被static修饰的方法 调用 静态/非静态函数的方法

1. 静态方法 
 通常,在一个类中定义一个方法为static,那就是说,无需本类的对象即可调用此方法
声明为static的方法有以下几条限制: 
   它们仅能调用其他的static 方法。 
   它们只能访问static数据。 
   它们不能以任何方式引用this 或super。                                                                                                                            
2. 静态变量
声明为static的变量实质上就是全局变量。当声明一个对象时,并不产生static变量的拷贝,而是该类所有的实例变量共用同一个static变量。静态变量与静态方法类似。所有此类实例共享此静态变量,也就是说在类装载时,只分配一块存储空间,所有此类的对象都可以操控此块存储空间,当然对于final则另当别论了                                                                                                                
3. static代码块
static关键字还有一个比较关键的作用就是 用来形成静态代码块以优化程序性能。static块可以置于类中的任何地方,类中可以有多个static块。在类初次被加载的时候,会按照static块的顺序来执行每个static块,并且只会执行一次。

String 是最基本的数据类型吗

不是

float 型float f=3.4是否正确

不正确;精度不准确,应该用强制类型转换,如下所示:float f=(float)3.4 。

语句float f=1.3;编译能否通过

不能;应该用强制类型转换,如下所示:float f=(float)1.3;

short s1 = 1; s1 = s1 + 1;有什么错

short s1 = 1;
s1 = s1 + 1;
s1+1运算结果是int 型,需要强制转换类型;short s1 = 1; s1 += 1;可以正确编译,自动类型提升。

堆区和栈区的区别

栈区:先进后出 存放局部变量 连续的存储空间
堆区:存放new出来的对象,不连续的存储空间

Math.round(11.5) 等于多少? Math.round(-11.5)等于多少

Math.round(11.5)==12 Math.round(-11.5)==-11 round 方法返回与参数最接近的长整数,参数加1/2 后求其floor。
round()方法可以这样理解:

将括号内的数+0.5之后,向下取值,

比如:round(3.4)就是3.4+0.5=3.9,向下取值是3,所以round(3.4)=3; 

round(-10.5)就是-10.5+0.5=-10,向下取值就是-10,所以round(-10.5)=-10

所以,Math.round(11.5)=12;

swtich 是否能作用在byte 上,是否能作用在long 上,是否能作用在String上

在 Java 5 版本之前switch 可以支持byte、char、int、short等基本类型,到java 7版本引入了String类型,以及Chartacter、Byte、Short、Integer。

数组有没有length()这个方法? String 有没有length()这个方法

数组没有length()这个方法,有length 的属性。String 有length()这个方法

char 型变量中能不能存贮一个中文汉字?为什么

能够定义成为一个中文的,因为java 中以unicode 编码,一个char 占16个字节,所以放一个中文是没问题的。

String 是最基本的数据类型吗

不是。Java中的基本数据类型只有8个:byte、short、int、long、float、double、char、boolean;除了基本类型(primitive type)和枚举类型(enumeration type),剩下的都是引用类型(reference type)

float f=3.4;是否正确

不正确。3.4是双精度数,将双精度型(double)赋值给浮点型(float)属于下转型(down-casting,也称为窄化)会造成精度损失,因此需要强制类型转换float f =(float)3.4; 或者写成float f =3.4F;。

short s1 = 1; s1 = s1 + 1;有错吗?short s1 = 1; s1 += 1;有错吗

对于short s1 = 1; s1 = s1 + 1;由于1是int类型,因此s1+1运算结果也是int 型,需要强制转换类型才能赋值给short型。而short s1 = 1; s1 += 1;可以正确编译,因为s1+= 1;相当于s1 = (short)(s1 + 1);其中有隐含的强制类型转换。

Java有没有goto

goto 是Java中的保留字,在目前版本的Java中没有使用。(根据James Gosling(Java之父)编写的《The Java Programming Language》一书的附录中给出了一个Java关键字列表,其中有goto和const,但是这两个是目前无法使用的关键字,因此有些地方将其称之为保留字,其实保留字这个词应该有更广泛的意义,因为熟悉C语言的程序员都知道,在系统类库中使用过的有特殊意义的单词或单词的组合都被视为保留字)

switch 是否能作用在byte 上,是否能作用在long 上,是否能作用在String上

在Java 5以前,switch(expr)中,expr只能是byte、short、char、int。从Java 5开始,Java中引入了枚举类型,expr也可以是enum类型,从Java 7开始,expr还可以是字符串(String),但是长整型(long)在目前所有的版本中都是不可以的。

在Java中,如何跳出当前的多重嵌套循环

在最外层循环前加一个标记如A,然后用break A;可以跳出多重循环。(Java中支持带标签的break和continue语句,作用有点类似于C和C++中的goto语句,但是就像要避免使用goto一样,应该避免使用带标签的break和continue,因为它不会让你的程序变得更优雅,很多时候甚至有相反的作用,所以这种语法其实不知道更好)

一个”.java”源文件中是否可以包含多个类(不是内部类)?有什么限制

可以,但一个源文件中最多只能有一个公开类(public class)而且文件名必须和公开类的类名完全保持一致。

列举算术运算符

a) +,-,*,/,% , += ,-=,*= ,/=, %=

if语句后边有个括号,该括号里表达式为什么类型?

boolean类型

switch语句后括号里的表达式是什么类型?case后类型如何确定?

a) char,int,byte,short,枚举类型,String。
b) case后面是一个常量,该常量类型由switch后括号内表达式来确定。

switch语句后,default关键字起什么作用?break起什么作用?

a) default:当用户指定的表达式与任何case都不匹配的时候,执行default后的语句。 b) break:退出当前case。

for循环后括号里三个表达式分别起什么作用?

a) 1:循环初始化的时候执行,只执行一次。
b) 2:循环成立的条件。
c) 3:循环每次执行都会调用该表达式,一般做变量自增。

while 和do...while区别?

a) while先判断条件,再执行。
b) do……while先执行,再判断条件
c) do……while至少执行一次。

简述一个java程序执行的过程?

a) 首先编写java源文件(扩展名为.java的文本文档)。
b) 用javac命令把源文件编译成字节码文件(.class文件)
c) 用java命令执行字节码文件。

成员变量的作用范围?局部变量的作用范围?

a) 成员变量在整个类内都有效
b) 局部变量只在定义它的类内有效。

访问修饰符public,private,protected,以及不写(默认)时的区别?

修饰符 当前类 同 包 子 类 其他包
public
protected ×
default × ×
private × × ×
类的成员不写访问修饰时默认为default。默认对于同一个包中的其他类相当于公开(public),对于不是同一个包中的其他类相当于私有(private)。受保护(protected)对子类相当于公开,对不是同一包中的没有父子关系的类相当于私有。Java中,外部类的修饰符只能是public或默认,类的成员(包括内部类)的修饰符可以是以上四种。

JDK是什么?JRE是什么?

JDK是Java Development Kit的缩写,是Java的开发工具包,主要包含了各种类库和工具,当然也包含了另外一个JRE

JRE是Java Runtime Environment的缩写,是Java程序的运行环境

什么是java的平台无关性

java跨平台是同一java源码被编译后得到的字节码文件可以在不同的操作系统上运行。
注意编译器和解释器的区别:
编译器是将java文件编译为class字节码文件,而解释器是解释执行字节码文件。
不同的系统用各系统下的解释器来运行程序,而编译文件不用用那个系统下的编译器都可以。

在一台电脑上配置java环境,path起什么作用?如何配置?

path的作用是在DOS环境下,能在任意位置使用JDK目录中bin文件夹中的可执行程序,来编译执行java程序
配置:在环境变量中找到path变量,把bin文件夹的绝对路径加上即可。

简述什么是数组

a) 数组是相同类型的数据按顺序组成的一种复合数据类型。通过数组名加数组下标,
来使用数组中的数据。下标从 0 开始排序。

创建数组是否需要指定数组长度,如何求数组长度

a) 必须指定数组长度,数组调用 .length来获取数组长度。

标签:short,Java,s1,float,基础,static,java,问答
From: https://www.cnblogs.com/YxinHaaa/p/17231316.html

相关文章

  • java调用WebService(未完成)记录篇
    背景:因工作需要和一个Sap相关系统以WebService的方式进行接口联调,之前仅听过这种技术,但并没有实操过,所以将本次开发相关的踩坑进行记录通过一个实例来认识webservice服......
  • 【基础算法】简单排序-冒泡排序
    【基础算法】简单排序-冒泡排序BubbleSortisthesimplestsortingalgorithmthatworksbyrepeatlyswappingtheadjacentelementsiftheyareinthewrongorde......
  • java.sql.SQLSyntaxErrorException: Table 'test.user' doesn't exist报错问题解决
    以下内容仅供自己学习使用,侵权必删在使用mubatis-plus的时候报错了以下内容java.sql.SQLSyntaxErrorException:Table'test.user'doesn'texist解决方法:2.1在......
  • Java基础字符串练习
    1.​需求;键盘录入一个字符串,使用程序实现在控制台遍历该字符串//1.键盘录入一个字符串并进行遍历Scannersc=newScanner(System.in);Sys......
  • 100道python基础题——(6)
    编写一个程序,根据给定的公式计算并打印值:。以下是C和H的固定值:C是50。H是30。D是一个变量,它的值应该以逗号分隔的序列输入到程序中。例子假设程序的输入序列是逗号分隔的......
  • 100道python基础题——(5)
    Python简明教程---20,Python类中的属性与方法-码农充电站-博客园(cnblogs.com)问题:定义一个至少有两个方法的类:    getString:从控制台输入获取字符串......
  • java进阶 正则表达式 -常用47
           QQ的正则表达式验证:StringQQ="[0-9]\\d{4,11}";System.out.println("123456".matches(QQ));手机号验证:Stringphone="^(13[0-9]|14[......
  • day10(javaSEPro)
    day10static关键字static叫静态,只能修饰成员变量、成员方法,不能修饰类,也不能修饰局部的东西static修饰成员变量static修饰成员变量的特点:被类的所有对象共享可以通......
  • JAVA线程锁基础
    https://blog.csdn.net/qq_33375499/article/details/105161343Synchnized和lock的区别Synchronized是悲观锁CAS是乐观锁 锁的状态 无锁->偏向锁->轻量级锁->......
  • 多线程基础
     基本概念:程序、进程、线程程序(program):为完成特定任务、用某种语言编写的一组指令的集合。即指一段静态的代码,静态对象。进程(process):是指一个内存中运行......