1、找出不大于n的最大质数。
package com; class B{ public static int MaxPrime(int n) { int p=0; for(int i=2;i<=n;i++) { int k=0; for(int j=2;j<=i;j++) { if(i%j==0) { k++; } } if(k==1&&i>p) { System.out.println(i); p=i; } } return p; } public static void main(String[] args) { int a=MaxPrime(100); System.out.println("+++++++++++++++++"); System.out.println(a); } }1、静态成员和静态方法,可以直接通过类名进行调用;其他成员和方法则需要通过实例化成对象之后,通过对象来调用。
2、静态块:用static申明,JVM加载类时执行,仅执行一次,且按声明顺序执行。 构造块:类中直接用{}定义,每一次创建对象时执行。 执行顺序优先级:静态块>main()>构造块>构造方法。
3、构造函数不能被继承,构造方法只能被显式或隐式的调用。 4、面对对象三大特征:封装、继承、多态;
封装:将属性私有化,提供公有的方法访问私有属性。为每个属性创建一对取值(getter)方法和赋值(setter)方法,用于对这些属性的访问;
通过封装,可以实现对属性的数据访问限制,同时增加程序的可维护性;
封装的主要作用在于对外隐藏内部实现细节,增加程序的安全性。
5、Float类和Double类都重写了equals方法,同类判等值可以为true,不同类为false。==比较的是两个对象的引用地址是否一致。
6、BufferedReader的父类是Reader。
7、parseInt()能把String变成int; valueOf()把String转换成Integer对象; intValue()把String变成int。
8、方法重写应遵循“两同,两小,一大”的原则: 两同:方法名、形参列表相同; 两小:返回值类型、抛出异常更小(这里的小是指继承关系的子父类) 一大:子类方法的访问修饰符应比父类方法更大或相等。
9、URL u=new URL(“http://www.123.com”); 如果http://www.123.com不存在,则返回http://www.123.com(打印出该网址)
10、DriverManager.getConnection方法是获取链接的,Class.forName方法是加载驱动的。