美文网首页
JAVA基础(一)

JAVA基础(一)

作者: Roper_被注册 | 来源:发表于2018-06-16 16:59 被阅读0次

面试两天后发现自己基础基本忘记的差不多了。 因为面试的需要,所以从头开始学。

独立编写Hello World程序。

System.out.println("Hello Wolrd");

class的作用

Class类可以帮助我们在程序运行时分析类,说白了就是获取类中的值。可能瞬间就想到了反射,没错!Class一般就是和反射配套使用的,因为我们向Class提供一个类或一个类的类名,Class就可以提供我们很多信息,比如属性/方法/修饰符/构造器/类名等等。然后我们就可以进一步进行反射。

main函数的作用

public static void main(String [] args)为Java程序的入口方法,JVM在运行的时候会首先查找main方法.其中,public是权限修饰符,表明任何类和对象都可以访问这个方法,static表明main方法是一个静态方法,即方法中的代码都是存储子静态存储区的,只要类被加载后,就可以使用该方法而不需要通过实例化对象来访问,可以直接通过类名来直接访问.JVM启动的时候就是按照上述的方法来获取程序的入口的.其中的参数String [] args是在命令行状态下与程序交互的方式.

输出语句的作用

给输出项目提供输出格式说明

:几个小问题?

  • JDK,JRE,JVM分别是什么?
    JDK,java开发工具;JRE,java开发环境;JVM,JAVA虚拟机;

  • Java语言是跨平台的吗?JVM是跨平台的吗?
    Java语言跨平台,JVM不是跨平台的;

  • 环境变量path和classpath的区别?
    PATH环境变量。作用是指定命令搜索路径;
    CLASSPATH环境变量。作用是指定类搜索路径,要使用已经编写好的类,前提当然是能够找到它们了,JVM就是通过CLASSPTH来寻找类的。

什么是注释?注释分为几种?注释有什么作用?

注释就是对代码的解释和说明,其目的是让人们能够更加轻松地了解代码。注释是编写程序时,写程序的人给一个语句、程序段、函数等的解释或提示,能提高程序代码的可读性。

单行注释、块注释、javadoc注释

什么是关键字?有什么特点?

关键字:被Java语言赋予特定含义的单词

组成关键字的字母全部小写

什么是标识符?由哪些部分组成?常见的命名规则有哪些?

标识符:给类,接口,方法,变量等起名字时使用的字符序列

英文大小写字母、数字字符、$和_

什么是常量?常量的分类?字面值常量表现形式有哪些?

在程序执行的过程中其值不可以发生改变

常量分别:字面值常量和自定义常量

计算出十进制46对应的二进制,八进制,十六进制的值。

至于进制的内容今天在练习一次,以后就可以不用练习了。
后面能听懂就OK了。不用浪费太多时间。
(可用计算器验证你算的是否正确)

二进制:00101110

什么是变量?变量的定义格式?要使用变量需要注意什么?

在程序执行的过程中,在某个范围内其值可以发生改变的量

需要注意格式是固定的;

Java中的数据类型分几类?基本数据类型有哪些?

JAVA中数据类型分为两类:基本数据类型和引用数据类型;

基本数据类型 引用数据类型
数值型
字符型 接口
布尔型 数组

数据类型转换:

隐式转换:隐式就是两个变量之间可以直接相互赋值的
强制转换:String.vluesOf

面试题:

第一题:

    byte b1=3,b2=4,b;
    b=b1+b2;
    b=3+4;
    哪句是编译失败的呢?为什么呢?
    
    b=b1+b2错误、越界

第二题:

    byte  by = 130;有没有问题?有问题如何解决?结果是多少呢?
    
    错误、将130写为byte类型;结果System.out.println(by)打印出-126;

常见的算术运算符有哪些?

+运算符的作用有哪些?

做加法运算,正数,字符串相加

除法和取余的区别?

除法使用符号/,整数相除只能得到整数;要想得到小数。可以*1.0;
求余使用符号%;

++和--的使用规则?

单独使用效果相同;
参与运算使用,在操作数的前后效果不同;

常见的赋值运算符有哪些?

+=运算的作用是什么?
把左边和右边的结果赋值给左边;注意左边不能是常量

扩展的赋值运算符有什么特点?

short s = 1; s = s + 1;有没有问题?如果有怎么解决?

有问题 s=s+(int)1;数据类型不同不能相加;
s=(short)(s+1);即可

short s = 1; s += 1;有没有问题?如果有怎么解决?
没有问题 s+=1相当与 s=(short)(s+1);

常见的关系运算符有哪些?

== 相等于;!=不等于;<小于;>大于;<= >= ;instanceof检查是否为类的对象;

关系运算符的结果有什么特点?

结果是布尔型;

常见的逻辑运算符有哪些?

&和&&的区别是什么?(与运算)
& 左边无论真假,右边都进行运算;
&& 如果左边为真,右边参与运算
|和||的区别是什么?(或运算)
| 左边无论真假,右边都进行运算;
|| 左边为真,右边不参与运算

##  位运算符^的特点是什么?

true^false;结果为true;

异或XOR运算符^与或运算符|不同之处是:当左右都为true时,结果为false;

如何实现对两个整数变量的值进行互换。

int m=22,n=44;
    m=m^n;
    n=n^m;
    m=m^n;
    System.out.println("m:"+m+",n:"+n);

三元运算符的格式是什么?

(关系表达式)?表达式1:表达式2;

执行流程是什么?

如果条件为true,运算后的结果是表达式1;
如果条件为flase,运算后的结果是表达式2;

使用三元运算符完成如下练习

比较两个数是否相等

    int m=22,n=44;
    int w=(m==n)?m:n;
    System.out.println(w);

获取两个数中最大值

int m=22,n=44;
    int w=(m>n)?m:n;
    System.out.println(w);

获取三个数中最大值

    int m=22,n=44,l=85;
    int w=(m>n)?m:n;
    int h=(w>l)?n:l;
    System.out.println(h)

流程控制语句有几种?

三类;

  • 顺序结构: 写在前面的先执行,写在后面的后执行;
  • 选择结构:if语句,switch语句;
  • 循环结构:for循环语句,while循环语句;

if语句的格式有几种?注意事项是什么?分别在什么时候使用?

有三种;

  • 第一种:
    if(条件表达式)

    执行语句:
  • 第二种:
    if(条件表达式)
    {
    执行语句1;
    }
    else //else 否则的意思。
    {
    执行语句2;
    }
  • 第三种:
    if(条件表达式)
    {
    执行语句1;
    }
    else if (条件表达式)
    {
    执行语句2;
    }
    ……
    else
    {
    执行语句n;
    }

看程序写结果:请自己独立分析,先不要编译运行。

第一题

int x = 1,y = 1;

if(x++==2 & ++y==2)
{
x =7;
}
System.out.println("x="+x+",y="+y);

答:x=2;y=2;因为(x++==2)先执行x==2,此时x为1!=2;所以判断flase,然后x++,则x=2;y同理;&左边无论真假,右边都进行运算;

第二题

int x = 1,y = 1;

if(x++==2 && ++y==2)
{
x =7;
}
System.out.println("x="+x+",y="+y);
x=2,y=1;&&如果左边为假,那么右边不参与运算。


第三题

int x = 1,y = 1;

if(x++==1 | ++y==1)
{
x =7;
}
System.out.println("x="+x+",y="+y);
true|true为真true,所以x=7,y=2;


第四题

int x = 1,y = 1;

if(x++==1 || ++y==1)
{
x =7;
}
System.out.println("x="+x+",y="+y);
答:x=7,y=1;因为x++==1为true;(x++==1 || ++y==1)双或,当前面为真,后面的不执行;


第五题

boolean b = true;

if(b==false)
System.out.println("a");
else if(b)
System.out.println("b");
else if(!b)
System.out.println("c");
else
System.out.println("d");
答:b

编写代码实现如下内容:if语句实现

考试成绩分等级。
90~100 A等。
80-89 B等。
70-79 C等。
60-69 D等。
60以下 E等。
请根据给定成绩,输出对应的等级。

int grader=89;
if(grader>89) {
System.out.println("A");
}
else if(grader>79) {
System.out.println("B");
}
else if(grader>69){
System.out.println("C");
}
else if(grader>59) {
System.out.println("D");
}else {
System.out.println("E");
}

相关文章

  • 技术体系

    一,java核心 java基础,jvm,算法,多线程,设计模式 Java基础:java基础相关,全栈java基础 ...

  • Java 基础

    Java 基础01Java开发入门 Java 基础02Java编程基础 Java 基础03面向对象 Java 基础...

  • 面试题汇总

    1.Java基础面试问题 Java基础之基础问题 Java基础之面向对象 Java基础之数据结构 Java基础之I...

  • 【Android】知识点汇总,坚持原创ing

    Android基础 Java基础 Java基础——Java内存模型和垃圾回收机制 语法基础 语法基础——C语法基础...

  • Java基础:反射

    反射注解动态代理相关阅读 Java基础:类加载器 Java基础:反射 Java基础:注解 Java基础:动态代理 ...

  • Java基础:注解

    系列阅读 Java基础:类加载器 Java基础:反射 Java基础:注解 Java基础:动态代理 1. 概述 注解...

  • Java基础:动态代理

    系列阅读 Java基础:类加载器 Java基础:反射 Java基础:注解 Java基础:动态代理 概述 在运行时,...

  • Java 集合类原理

    Java基础——HashMap源码分析 Java基础——HashSet源码分析 Java基础——HashTable...

  • Java基础:类加载器

    系列阅读 Java基础:类加载器 Java基础:反射 Java基础:注解 Java基础:动态代理 1. 什么是类加...

  • java基础(一)-String、StringBuffer、St

    java基础-String、StringBuffer、StringBuilder java基础小白,初学java,...

网友评论

      本文标题:JAVA基础(一)

      本文链接:https://www.haomeiwen.com/subject/qvubeftx.html