变量常量类型转换和命名规范

变量和常量

static double salary = 2500;

   //属性:变量
   //变量作用域:
   //类变量 static
   // 局部变量
   // 实例变量(从属于对象,如果不进行初始化,这个类型默认值),布尔值默认值为false,除了基本类型,其余默认值都为null。

   String name;
   int age;
   //main方法
   public static void main(String[] args) {
       int i = 10;//这是一个局部变量

       //类的一个实例
       Demo05 demo05 = new Demo05();
       System.out.println(demo05.age);//0
       System.out.println(demo05.name);//null
       System.out.println(salary);//输出类变量2500

  }

   //其他方法
   public void add(){

  }
    //常量:它的值被设定后,在运行过程中不允许被改变,一般使用大写字符
   //修饰符不存在先后顺序 static和final可调换
   static final double PI = 3.1415926;

   public static void main(String[] args) {
       System.out.println(PI);
  }

类型转换

public static void main(String[] args) {
       //低------------------------------------>高
       //byte,short,char -> int -> long -> float -> double
       //运算中先转化后运算
       int i = 128;
       byte b = (byte)i;//内存溢出
       double c = i;
       //强制转换 (类型)变量名 高-->低
       //自动转换 低-->高
       System.out.println(i);//128
       System.out.println(b);//-128
       System.out.println(c);//128.0

       /*
       注意点:
       1.不能对布尔值进行转换。
       2.不能把对象类型转换为不相干类型。
       3.再把高容量转换到低容量的时候,强制转换。
       4.转换的时候可能存在内存溢出,或者精度问题。
        */
       System.out.println((int)23.7);   //23
       System.out.println((int)-45.89f);//-45

       char c1 = 'a';
       int c2 = c1 + 1;
       System.out.println(c2);         //98
       System.out.println((char)c2);   //b

       //操作比较大的数的时候,注意溢出问题
       //Jdk7的新特性,数字之间可以用下划线分割
       int money = 10_0000_0000;
       int years = 20;
       int total = money*years;//计算溢出
       long total2 = money*years;//默认为int,转换之前已经存在问题。
       long total23 = money*((long)years);//先把一个数转化为long
       System.out.println(money);//1000000000
       System.out.println(total);//-1474836480
       System.out.println(total2);//-1474836480
       System.out.println(total23);//20000000000

命名规范

  1. 所有便变量、方法、类名:见明知意

  2. 类成员变量:首字母小写和驼峰原则 lastName

  3. 局部变量:首字母小写和驼峰原则

  4. 常量:大写字母和下划线 MAX_VALUE

  5. 类名:首字母大写和驼峰原则 Man,GoodMan

  6. 方法名:首字母小写和驼峰原则 runRun()

Java随堂笔记二的更多相关文章

  1. Java IO学习笔记二

    Java IO学习笔记二 流的概念 在程序中所有的数据都是以流的方式进行传输或保存的,程序需要数据的时候要使用输入流读取数据,而当程序需要将一些数据保存起来的时候,就要使用输出流完成. 程序中的输入输 ...

  2. Java IO学习笔记二:DirectByteBuffer与HeapByteBuffer

    作者:Grey 原文地址:Java IO学习笔记二:DirectByteBuffer与HeapByteBuffer ByteBuffer.allocate()与ByteBuffer.allocateD ...

  3. Java随堂笔记一

    今天开始了Java的正式复习,因为有两三年没有接触Java了,所以打算开始从头复习. 下面使课堂的一些随堂笔记,如果有遗忘,我可以随时翻阅该博客. public static void main(St ...

  4. java jvm学习笔记二(类装载器的体系结构)

    欢迎装载请说明出处:http://blog.csdn.net/yfqnihao                 在了解java虚拟机的类装载器之前,有一个概念我们是必须先知道的,就是java的沙箱,什 ...

  5. 《Thinking in Java》学习笔记(二)

    1.Java方法的重载 如果几个方法都有相同的名字,区分它们就需要重载来完成. 构成重载的种类: 1)形参的个数不同  2) 形参的类型不同 3) 形参的顺序不同 注意,返回值.抛出的异常和修饰符的不 ...

  6. Java基础学习笔记二十一 多线程

    多线程介绍 学习多线程之前,我们先要了解几个关于多线程有关的概念.进程:进程指正在运行的程序.确切的来说,当一个程序进入内存运行,即变成一个进程,进程是处于运行过程中的程序,并且具有一定独立功能. 线 ...

  7. Java基础学习笔记二十三 Java核心语法之反射

    类加载器 类的加载 当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过加载,链接,初始化三步来实现对这个类进行初始化. 加载就是指将class文件读入内存,并为之创建一个Class对象.任 ...

  8. Java基础学习笔记二十五 MySQL

    MySQL 在dos中操作mysql 连接mysql命令: mysql -uroot -p密码 ,连接OK,会出现mysql> 对数据库的操作 创建一个库 create database 库名 ...

  9. Java基础学习笔记二十六 JDBC

    什么是JDBC JDBC(Java DataBase Connectivity)就是Java数据库连接,说白了就是用Java语言来操作数据库.原来我们操作数据库是在控制台使用SQL语句来操作数据库,J ...

随机推荐

  1. em与rem之间的区别以及移动设备中的rem适配方案

    em与rem之间的区别: 共同点: 它们都是像素单位 它们都是相对单位 不同点: em大小是基于父元素的字体大小 rem大小是基于根元素(html)的字体的大小 实例: <!DOCTYPE ht ...

  2. vue-cli随机生成port源码

    const portfinder = require('portfinder'): const port = await portfinder.getPortPromise(): 两行代码 端口搜索范 ...

  3. Android.mk 使用说明

    Android.mk 详解https://blog.csdn.net/dearsq/article/details/50585537  Android.mk中的主要配置参数: 1.LOCAL_JACK ...

  4. java 使用tess4j实现OCR的最简单样例

    网上很多教程没有介绍清楚tessdata的位置,以及怎么配置,并且对中文库的描述也存在问题,这里介绍一个最简单的样例. 1.使用maven,直接引入依赖,确保你的工程JDK是1.8以上 <dep ...

  5. 面试官问我,为什么老司机建议MySQL列属性尽量用 NOT NULL ?

    本文阅读时间大约6分钟. 其实写这篇文章,也是来自一个知识星球读者的提问,他在二面的过程中被问到了,由于他简历中写道有 MySQL 调优经验,但这个问题没有回答好,二面被刷了. 其实我们刚学习 C 语 ...

  6. python调用函数设置超时机制

    有时候需要给函数设置超时机制,以防止它卡住我们的程序,这里可以用python的signal模块,signal模块可以实现程序内部的信号处理. # coding:utf8 import time imp ...

  7. 跳过__wakeup()魔法函数

    __wakeup():将在序列化之后立即被调用. 漏洞原理:当反序列化字符串中,表示属性个数的值大于其真实值,则跳过__wakeup()执行.     参考题目:xctf-unserialize3 h ...

  8. WPF系列 —— 控件添加依赖属性(转)

    WPF系列 —— 控件添加依赖属性 依赖属性的概念,用途 ,如何新建与使用.本文用做一个自定义TimePicker控件来演示WPF的依赖属性的简单应用. 先上TimePicker的一个效果图. 概念 ...

  9. MySQL体系结构与存储引擎

    MySQL 体系结构 先看 MySQL 数据库的体系结构,如下图所示. MySQL 体系结构由 Client Connectors 层.MySQL Server 层及存储引擎层组成. Client C ...

  10. ajax中responseText与responseXML区别

    1."responseText”属性以字符串形式返回HTTP响应:“responseXML”属性以XML形式返回HTTP响应.function getTel() {  var telText ...