java oop : object class
This commit is contained in:
10
JavaOOP/src/Java27.java
Normal file
10
JavaOOP/src/Java27.java
Normal file
@@ -0,0 +1,10 @@
|
||||
import myObject.A;
|
||||
|
||||
public class Java27 {
|
||||
public static void main(String[] args) {
|
||||
|
||||
Object o = new A();
|
||||
((A) o).display();
|
||||
System.out.println(o.toString());
|
||||
}
|
||||
}
|
||||
13
JavaOOP/src/myObject/A.java
Normal file
13
JavaOOP/src/myObject/A.java
Normal file
@@ -0,0 +1,13 @@
|
||||
package myObject;
|
||||
|
||||
public class A{
|
||||
|
||||
public void display() {
|
||||
System.out.println("A 클래스");
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "재정의 메소드";
|
||||
}
|
||||
}
|
||||
@@ -14,6 +14,9 @@ const Form = () => {
|
||||
const onChangeMine = useCallback((e) => {
|
||||
setMine(e.target.value);
|
||||
}, []);
|
||||
const onClickBtn = useCallback((e) => {
|
||||
setMine(e.target.value);
|
||||
}, []);
|
||||
|
||||
return (
|
||||
<div>
|
||||
|
||||
@@ -1,17 +1,7 @@
|
||||
import React, {memo} from "react";
|
||||
import Tr from "./Tr";
|
||||
import React from "react";
|
||||
|
||||
const Table = memo(({ tableData, dispatch }) => {
|
||||
console.log("table rendered");
|
||||
return (
|
||||
<table>
|
||||
{Array(tableData.length)
|
||||
.fill()
|
||||
.map((tr, i) => (
|
||||
<Tr rowIndex={i} rowData={tableData[i]} dispatch={dispatch} />
|
||||
))}
|
||||
</table>
|
||||
);
|
||||
});
|
||||
const Table = () => {
|
||||
return <div></div>;
|
||||
};
|
||||
|
||||
export default Table;
|
||||
|
||||
@@ -1,24 +1,7 @@
|
||||
import React, { useCallback, useRef, useEffect, memo } from "react";
|
||||
import { CLICK_CELL } from "./TicTacToe";
|
||||
import React from "react";
|
||||
|
||||
const Td = memo(({ rowIndex, cellIndex, dispatch, cellData }) => {
|
||||
console.log("td rendered")
|
||||
|
||||
const ref = useRef([]);
|
||||
useEffect(() => {
|
||||
console.log(rowIndex === ref.current[0], cellIndex === ref.current[1], dispatch === ref.current[2], cellData === ref.current[3])
|
||||
ref.current = [rowIndex, cellIndex, dispatch, cellData]
|
||||
}, [rowIndex, cellIndex, dispatch, cellData])
|
||||
|
||||
const onClickTd = useCallback(() => {
|
||||
console.log(rowIndex, cellIndex);
|
||||
if(cellData) {
|
||||
return;
|
||||
}
|
||||
dispatch({ type: CLICK_CELL, row: rowIndex, cell: cellIndex });
|
||||
}, [cellData]);
|
||||
|
||||
return <td onClick={onClickTd}>{cellData}</td>;
|
||||
});
|
||||
const Td = () => {
|
||||
return <div></div>;
|
||||
};
|
||||
|
||||
export default Td;
|
||||
|
||||
@@ -1,20 +1,7 @@
|
||||
import React, {memo, useMemo} from "react";
|
||||
import Td from "./Td";
|
||||
import React from "react";
|
||||
|
||||
const Tr = memo(({ rowData, rowIndex, dispatch }) => {
|
||||
console.log("tr rendered")
|
||||
return (
|
||||
<tr>
|
||||
{Array(rowData.length)
|
||||
.fill()
|
||||
.map((td, i) => (
|
||||
useMemo(
|
||||
() => <Td rowIndex={rowIndex} cellIndex={i} dispatch={dispatch} cellData={rowData[i]} >{""}</Td>,
|
||||
[rowData[i]],
|
||||
)
|
||||
))}
|
||||
</tr>
|
||||
);
|
||||
});
|
||||
const Tr = () => {
|
||||
return <div></div>;
|
||||
};
|
||||
|
||||
export default Tr;
|
||||
|
||||
Reference in New Issue
Block a user