Java编程基础

1、Java基本语法格式
[修饰符] 类型 标识符 [= 值];
这是Java变量定义的语法格式,至少我没见过其它格式- -。

**修饰符**:见名知意,用来修饰的嘛!表明当前变量被访问的权限,也就是能不能被访问到。具体有以下几种:
    private:私有类型,外界(非本类之中)不能访问到此变量,必须通过类设置get或set方法访问修改
    protected:保护类型,在同一个包或其子类能够访问此变量
    public:公共类型,所有人都能访问此变量
    friendly:默认的修饰符,也就是没有标明修饰符时所使用的,这样的变量只能在本类或同一个包下的其他类可以访问
    final:最终变量,即用此修饰符修饰的为**常量**,既然是常量,那么其值不可更改,且在声明的时候就得赋值
    static:静态变量,能够直接通过类名调用此变量
    以上仅是变量修饰符,Java还有类修饰符与方法修饰符

    类修饰符:public、abstract、friendly(默认的,同包下能够使用)
    方法修饰符:比变量修饰符多了一个   synchronized  用此修饰的方法为同步方法,在使用多线程时,避免多个线程同时执行此方法(简单就是为这个方法加个锁,我在用别人就别想用!我用完了就解锁,你们再用)

**标识符**:往窄了说就是变量名,往宽了说就是所有要素的名字
    顺带简单说一下Java的命名规则吧
    **驼峰式命名!**
    命名范围:字母、数字、_、$。
    如果是类名,每个单词首字母都大写 例如:public class MyClass{}。
    如果是变量名或者方法名,首字母小写,其余单词首字母大写 例如:MyClass myClass。
    且命名不能占用Java的关键字与保留字,不能以数字开头。

2、变量及变量作用域

变量:在内存中的一小块区域,用以保存程序执行中的数据
    Ps:变量在使用之前必须声明且初始化

变量分类:
        1、局部变量:定义在方法中的变量,只能在此方法中使用
        2、全局变量:定义在类中的变量,整个类都能使用此变量

变量的8大数据类型:
    byte         1字节
    short        2字节
    int          4字节
    long         8字节
    float        4字节 
    double       8字节
    char         2字节
    boolean      没有明确指定

变量作用域:变量声明的地方离他最近的一对{}就是其作用域
    例如:
    public void method(){
        int i1;//其作用域就是整个方法
        for(int i2;...){//其作用域就是整个for循环
            int j;//其作用域就是这个for循环的一次循环
        }
    }

3、类型转换

1、自动类型转换:这类转换时发生在小精度数据(或子类)向大精度数据(或父类)发生类型转换时
    eg: double d = 100;      这里发生了int向double的类型转换
2、强制类型转换:当大精度数据(或父类)向小精度数据(或子类)发生类型转换时,编译器会报错,我们就可以使用强制类型转换来使编译器不报错
    eg: int i = (double) 1.0;  这里发生了double向int的强制类型转换

那如何分辨两种类型转换呢,强制类型转换  =   之后会有  (类型)  的标志,如上例子,很好区分。

这里说一说 char c=127; 与  int i=127; char c=i;  的区别。
    前者将127赋值给c时会转化为二进制 0111 1111 而char是2个字节,足够装下这8位
    后者会有编译错误,当int i=127;之后 i所占空间为4个字节,当char c=i;时就是大精度数据往小精度数据转换类型,所以会有编译错误。

4、运算符与表达式

1、运算符:
    算术运算符   + 、 - 、 * 、 / 、 % 、 ++ 、 --
    逻辑运算符   ! 、 & 、 | 、 ^ 、 && 、 ||
    关系运算符   > 、 < 、 >= 、 <= 、 == 、 !=
    赋值运算符   = 、 += 、 -= 、 *= 、 /= 、 %=
这些运算符不难理解,主要记一下&与&&,|与||的区别:
    &&:短路且
    &:非短路且
        eg: if(a>0 && b<a){},在这个条件之中,如果a>0==false,那么就不会再继续往后判断b<a,直接得出结果为false;if(a>0 & b<a){},在这个条件之中,如果a>0==false,也会再继续往后判断b<a,虽然结果仍为false;
    ||与|也是同理。

    位运算符   & 、 |
        这里介绍两个
        &:二进制 按位与
            A      B       A&B
            1      1        1
            1      0        0
            0      0        0
            0      1        0
        |:二进制 按位或
            A      B       A|B
            1      1        1
            1      0        1
            0      0        0
            0      1        1

2、表达式:由运算符与操作数组成
        eg: a=b;   c=a/b;等等

生平第一次,错误之处敬请指正!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值