[39일차] chap6. p248~ 패키지
p.256 접근 제한자
접근제한 | 적용대상 | 접근할 수 없는 클래스 |
public | 클래스,필드,생성자,메소드 | 없음 |
protected | 필드,생성자,메소드 | 자식 클래스가 아닌 다른 패키지에 소속된 클래스 |
default | 클래스,필드,생성자,메소드 | 다른 패키지에 소속된 클래스 |
private | 필드,생성자,메소드 | 모든 외부 클래스 |
접근제한 강화강도
private > default> protected> public
package packageA;
public class B {
public String b;
public B() {
}
public void b() {
System.out.println("b 메소드");
}
}
package packageB;
public class C {
public String c;
public C() {
}
public void c() {
System.out.println("c 메소드");
}
}
클래스 A,B,C 모두 public으로 잡고 만들어준 다음
A에서 불러오기에 문제 없다
B,C에서 public 지우고 디폴트상태로 만들기
package packageA;
class B {
String b;
B() {
}
void b() {
System.out.println("b 메소드");
}
}
package packageB;
class C {
String c;
C() {
}
void c() {
System.out.println("c 메소드");
}
}
b는 접근 가능하지만 c로는 접근이 불가하게 된다 (즉 , 같은 패키지에서만 접근 가능하다)
chap.7 상속 (Inheritance) +접근제어자
b 에 생성자 만들어서 TestMain에서 접근해보기
자동으로 만들어지는 생성자는 public으로 만들어진다
그래서 오류가 안남 !!!
265페이지 getter와 setter메소드
setSpeed에 100 입력하고 getSpeed로 받아와서 main 함수에서 리턴값 출력하기
set 100 / return 150
chap.6 연습문제 15번 로그인 만들기
연습문제16번
문제 17번 new 안쓰고 클래스 호출하기
문제18번 싱글톤패턴 만들기
연습문제 19번
jsp
top
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style>
header{
background-color:#b0c4de;
height:50px;
line-height:50px;
color:#ffffff;
font-size:15px;
text-align:center;
}
nav{
background-color:#4682b4;
height:35px;
line-height:35px;
font-size:12px;
}
section{
background-color:#add8e6;
min-height:450px;
}
footer{
background-color:#b0c4de;
height:40px;
line-height:40px;
color:#ffffff;
font-size:13px;
text-align:center;
}
</style>
</head>
<body>
<div>
<header> (과정평가형 정보처리 기능사)성적조회 프로그램 Ver 1.0 </header>
<nav>
 <a href= form.jsp>성적입력</a>
 성적조회
 <a href=index.jsp>홈으로</a>
</nav>
index
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@include file="top.jsp" %>
<section>
<br>
<div align="center">
<font size=5><b>고등학교 성적조회 프로그램</b></font>
</div>
<h3> 고등학교 성적을 조회하는 프로그램을 작성한다.</h3>
 1.학생성적정보 테이블을 생성한다.
<br>  2.학생적적정보 테이블에 샘플데이터를 SQL문을 이용하여 데이터를 추가생성한다.
<br>  3.주어진 화면 디자인을 이용하여 화면을 디자인한다.
<br>  4.업무여건에 따라 프로그램을 작성한다.
<br>
</section>
<footer>
HRDKOREA Copyright 2018 ALL Rights resources Development Service of Korea
</footer>
</div>
</body>
</html>
form
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@include file="top.jsp" %>
<section>
<br>
<div align="center">
<font size=5><b>학생 성적 등록</b></font>
</div>
<div align="center">
<form name="f1" action=form_ok.jsp >
<table width=600 border=1 height=400>
<tr><td width=200 align="center">학번</td>
<td width=400><input type=text name=sno > </td></tr>
<tr><td align="center">학생이름</td>
<td ><input type=text name=sname> </td></tr>
<tr><td align="center">국어</td>
<td><input type=text name=kor size=10> </td></tr>
<tr><td align="center">영어</td>
<td><input type=text name=eng size=10> </td></tr>
<tr><td align="center">수학</td>
<td><input type=text name=math size=10> </td></tr>
<tr><td align="center">역사</td>
<td><input type=text name=hist size=10> </td></tr>
<tr>
<td colspan=2 align="center">
<input type=submit value="저장하기">
<input type=reset value="다시작성">
</td>
</tr>
</table>
</form>
</div>
<br>
</section>
<footer>
HRDKOREA Copyright 2018 ALL Rights resources Development Service of Korea
</footer>
</div>
</body>
</html>
form_ok
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
String sno=request.getParameter("sno");
String sname=request.getParameter("sname");
String kor=request.getParameter("kor");
String eng=request.getParameter("eng");
String math=request.getParameter("math");
String hist=request.getParameter("hist");
%>
<div align="center">
학번: <%=sno%> <br>
이름: <%=sname%> <br>
국어: <%=kor%> <br>
영어: <%=eng%> <br>
수학: <%=math%> <br>
역사: <%=hist%> <br>
</div>
16페이지 try 부분만 복사
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@page import ="java.sql.*" %>
<%
String sno=request.getParameter("sno");
String sname=request.getParameter("sname");
String kor=request.getParameter("kor");
String eng=request.getParameter("eng");
String math=request.getParameter("math");
String hist=request.getParameter("hist");
Class.forName("oracle.jdbc.OracleDriver");
Connection conn = DriverManager.getConnection
("jdbc:oracle:thin:@//localhost:1521/xe","system","1234");
String sql= "insert into examtbl (sno,sname,kor,eng,math,hist)values(?,?,?,?,?,?)";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1,sno);
pstmt.setString(2,sname);
pstmt.setString(3,kor);
pstmt.setString(4,eng);
pstmt.setString(5,math);
pstmt.setString(6,hist);
pstmt.executeUpdate();
%>
<div align="center">
학번: <%=sno%> <br>
이름: <%=sname%> <br>
국어: <%=kor%> <br>
영어: <%=eng%> <br>
수학: <%=math%> <br>
역사: <%=hist%> <br>
</div>
<%
pstmt.close();
conn.close();
response.sendRedirect("index.jsp");
%>
<%@page import ="java.sql.*" %>
에서 sql은 패키지 뒤에 * 있는 자리는 클래스