零碎的知识点

MySQL根据出生日期计算年龄

      在进行数据库的设计时,往往数据库中存放的是用户信息的出生年月,而不是用户的年龄,通过根据出生日期计算年龄,可以保持用户年龄随着时间的改变而进行实时的更新。

      系统当前时间为2017/12/21,根据出生日期计算年龄的SQL语句查询代码如下:

这里写图片描述

Scanner中的输入

      用户可以通过Scanner类中的方法获取用户在控制台输入的数据。通过如下方式:
      Scanner sc = new Scanner(System.in);



      next nextInt nextLine nextDouble 的区别:

      next获取用户输入的字符串,以空格为截止符

      nextInt获取用户输入的整形数值,以空格为截止符

       nextLinenextInt获取用户输入的字符串,以回车为截止符

       nextDouble获取用户输入的double型数值,以空格为截止符:

Scanner sc = new Scanner(System.in); 

        int test=sc.nextInt();
        //输入:   35              输出:     35


        String str=sc.next();
        //输入:   public static void main             输出:     public


//      String str=sc.nextLine();
        //输入:   public static void main             输出:     public static void main 


//      double test1=sc.nextDouble();
        //输入:   23.31               输出:     23.31

静态static

静态代码块优先于主方法,且只执行一次

被static修饰的语句或者变量有如下特点:

1.随着类的加载而加载
2.优先于对象存在
3.被所有对象所共享
4.可以直接被类名所调用

使用注意:
1.静态方法只能访问静态成员
2.静态方法中不可以写this,super关键字
3.主函数是静态的


多态

对于多态,可以总结它为:

一、使用父类类型的引用指向子类的对象;
二、该引用只能调用父类中定义的方法和变量;
三、如果子类中重写了父类中的一个方法,那么在调用这个方法的时候,将会调用子类中的这个方法;(动态连接、动态调用)
四、变量不能被重写(覆盖),”重写“的概念只针对方法,如果在子类中”重写“了父类中的变量,那么在编译时会报错。

多态的3个必要条件:
1.继承 2.重写 3.父类引用指向子类对象。

向上转型: Person p = new Man() ; //向上转型不需要强制类型转化

向下转型: Man man = (Man)new Person() ; //必须强制类型转化

关键的来了,不论向上或者向下转型,都是一句话,“编译看左边,运行看右边”。也就是编译时候,会看左边引用类型是否能正确编译通过,运行的时候是调用右边的对象的方法。

try/catch中的finally

      假设利用 return 语句从 try 语句块中退出。在方法返回前,finally子句的内容将被执行。如果 finally 子句中也有一个 return 语句,这个返回值将会覆盖原始的返回值。

HttpServletRequest和HttpServletResponse

      HttpServletRequest类主要处理:

  1. 读取和写入HTTP投标
  2. 读取和设置cookies
  3. 读取路径信息
  4. 表示HTTP会话

      HttpServletResponse类主要处理:

1. 设置http头标
2. 设置cookie
3.设置返回数据类型
4. 输出返回数据

Math函数的用法

      Math类中提供了三个与取整有关的方法:ceil,floor,round,这些方法的作用于它们的英文名称的含义相对应,例如:ceil的英文意义是天花板,该方法就表示向上取整

      Math.ceil(11.3)的结果为12,Math.ceil(-11.6)的结果为-11;

      floor的英文是地板,该方法就表示向下取整,Math.floor(11.6)的结果是11,Math.floor(-11.4)的结果-12;

      最难掌握的是round方法,他表示“四舍五入”,算法为Math.floor(x+0.5),即将原来的数字加上0.5后再向下取整,所以,Math.round(11.5)的结果是12,Math.round(-11.5)的结果为-11;

求子串数目

      若串S=’software’,其子串数目为(包括空串):37

      字符串的子串,就是字符串中的某一个连续片段。截取一个字符串长度需要一个起始位置和结束位置;

      计算公式:n(n+1)/2 + 1 此题n=8 ;       8(8+1)/2 +1=37;

final

      final修饰类、方法、属性!不能修饰抽象类,因为抽象类一般都是需要被继承的,final修饰后就不能继承了。

      final修饰的方法不能被重写而不是重载!

      final修饰属性,此属性就是一个常量,不能被再次赋值!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值