中级软件工程师的技能基本要求 |
您所在的位置:网站首页 › 高级软件工程师的要求 › 中级软件工程师的技能基本要求 |
本人2011年9月开始从事软件工程师的工作,至今(2013-9),二年工作经年。结合今年8月份的跳槽,几家新公司面试需要掌握的技能点积累供大家分享下,如有不正确的或更好建议等需要补充的,欢迎大家回帖: servlet生命周期 实例化》Servlet容器创建Servlet的实例 初始化》该容器调用init()方法 服务》如果请求Servlet,则容器调用service()方法 销毁》销毁实例之前调用destory()方法 exception5个NullPointException ClassnotfoundException SqlException IOException FileNotFoundException ClassCastException ArrayIndexOutOfBoundsException NoSuchMethodException NumberFormatException 重载和重写重载:是在同一个类可以写多个同方法名的方法,参数却不相同的方法,返回值随便更改。 重写:重写是子类重写父类里的方法,方法名、返回值、参数都必须一样,内容随便更改。 抽象类和接口区别抽象类:抽象类里的方法可以不是抽象的,但是有抽象方法的类一定是抽象类;抽象类不能实例化;抽象类的子类如果没实现父类的抽象方法,那么子类也必须定义成抽象方法。 接口:接口里所有的方法都是抽象的,接口中的方法默认定义为public abstract.变量默认为public static final.
抽象类用到的时候:可以定义一个类似模板类,众多子类继承它后,也可增添自己的方法。 接口用到的时候:接口通常在定义很多需要实现业务操作时用,实现它的类需要必须实现它里面的所有定义的方法。
一个类可以实现多个接口,但只能继承一个抽象类 集合map set listList与set都是单列元素的集合,都继承Collection; set里面不允许有重复的值,遍历元素时,使用Iterator接口取得所有的元素,然后再逐一遍历。 List表示有先后顺序的集合,添加元素时按先来后到顺序排序;也可手动指定索引位置插入元素(add(index I,Object o))。 Map是双列集合,其中有put(Obj key,Obj val)方法,取值使用get(obj key),不能存放重复键的value值,如果存放同样的键值,会被覆盖掉。 Linklist和ArrayList区别 HaspMap TreeMap HashSet TreeSetLinklist是链表,适合插入和删除 ArrayList数组排序,适合遍历
HashMap使用是hash码存储元素,所以查找快,有containsvalue和containsKey查找方法 TreeMap自动排序
HashSet,用hash查找更快 TreeSet自动排序 至于HashMap和TreeMap,和Set的差不多,HashMap查找快,TreeMap自动排序。 声明注意float a =2.0f; doubleb =2.0; char c =56; String和StringBuffer、stringbuild区别 String和StringBuffer最明显的区别是StringBuffer有append()方法,可以改变字符,效率高; 将 StringBuilder的实例用于多个线程是不安全的。 Jdbc链接数据库 1. //连接MySql数据库,用户名和密码都是root 2. String url = "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=gbk " ; 3. private staticfinal String username = "root" ; 4. private staticfinal String password = "ok" ; 5. private static final StringdriverClass=”com.microsoft.jdbc.sqlserver.SQLServerDriver”; publicstaticvoid main(String[] args) { Connection connection = null; Statement statement = null; ResultSet resultSet = null; try { Class.forName(driverClass); connection = DriverManager.getConnection(url,userName,password); String sql = ""; statement = connection.createStatement(); //PreparedStatementpreparedStatement = connection.prepareStatement(sql); //preparedStatement.setInt(parameterIndex,x); //preparedStatement.setString(parameterIndex,x); //String callsql = "{call mystore()}"; //CallableStatementcallableStatement = connection.prepareCall(callsql); resultSet = statement.executeQuery(sql);
} catch (ClassNotFoundException e) { //TODO Auto-generated catch block e.printStackTrace(); } catch (SQLException e) { //TODO Auto-generatedcatch block e.printStackTrace(); }finally{ try { if (resultSet!=null) { resultSet.close(); } if (statement!=null) { statement.close(); } if (connection!=null) { connection.close(); } } catch (SQLException e) { //TODO Auto-generated catch block e.printStackTrace(); } } } Jdbc调用存储过程 public staticboolean create() throws Exception { /*** 創建存儲過程(可以放到數據庫執行) * use portal2; DROP PROCEDURE IFEXISTS mystore; CREATE PROCEDUREmystore() begin select * from r_login_log where result ='fail' and (server_name like '%200%' or server_name like '%202%'); end; //執行命令 call mystore(); */ System.setProperty("jdbc.drivers","com.mysql.jdbc.Driver"); Connectionconn = DriverManager.getConnection( "jdbc:mysql://202.101.36.206:3306/portal2","root", "noc_por!tDxcw.com"); String sql = "{ callmystore() }"; CallableStatement st =conn.prepareCall(sql); boolean flag =st.execute(sql); st.close(); conn.close(); return flag; } 接口是否可以继承?抽象类是否可实现接口?抽象类是否可继承集体类?抽象类中是否可以有静态的man方法?抽象类和普通类的唯一区别是抽象类不能实例化和允许有abstract方法 publicclass jdbcimplementsImpl1,Impl2{} 基本数据类型:byteshort int long boolean char float double String类 |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |