When reducing the font size to make a wide table "fit" inside the width of the text block, LaTeX doesn't shrink the amount of intercolumn whitspace proportionally. To salvage any chances of having a readable table, it's important to shrink the amount of intercolumn whitespace as well.
I suggest you (i) reorganize the table's header to collect the repeated "Ref." and (ii) use a tabular* environment instead of the basic tabular environment. With these two changes made, it's still necessary to use \scriptsize, for a 30% linear reduction of the main font size.
The first horizontal line in the screenshot is there to illustrate the width of the textblock.

\documentclass[a4paper, 10pt]{article}
\usepackage{booktabs}
\usepackage{caption}
\captionsetup{labelsep=period, skip=5pt}
\usepackage[flushleft]{threeparttable}
\begin{document}
\hrule % just to illustrate width of textblock
\begin{table}[h]
\scriptsize
\setlength\tabcolsep{0pt} % let LaTeX determine whitespace between columns
\begin{threeparttable}
\caption{Optimal results of Example 2}
\label{tab:results2}
\begin{tabular*}{\textwidth}{l@{\extracolsep{\fill}}*{9}{c}}
\toprule
Item & \multicolumn{8}{c}{Ref.} & Our method\\
\cmidrule{2-9}
& 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\\
\midrule
Utility (kW) & 2000 & 3800.00 & 4200.00 & 4200.00 & 4200.00 & 4200.00& 4200.00 & 4200.00 & 5000.00\\
Capital cost\tnote{a} (k\$) & 163.27 & & & & & & & & \\
Total annual cost (k\$) & 2268.59 & & & & -- & & & & \\
\bottomrule
\end{tabular*}
\begin{tablenotes}
\scriptsize
\item[a] Based on the cost parameters from ref.~6.
\item[--] Not reported in literature.
\end{tablenotes}
\end{threeparttable}
\end{table}
\end{document}
If you're willing to allow line breaks in the first column, it's possible to use \footnotesize (for a 20% reduction in font size) instead of \scriptsize. If you choose this method, you could use a tabularx environment (instead of the tabular* environment used above) to simplify getting optimal line breaks in column 1. I would also suggest you contemplate aligning the numeric data in columns 2 thru 10 on their respective decimal markers, in order to improved the table's readability. I would also replace the slightly comical-looking k\$ with 10^\textsuperscript{3} \$.

\documentclass[a4paper, 10pt]{article}
\usepackage{booktabs,tabularx,ragged2e,dcolumn}
\newcolumntype{Y}{>{\RaggedRight}X}
\newcolumntype{d}[1]{D..{#1}}
\usepackage{caption}
\captionsetup{labelsep=period, skip=5pt}
\usepackage[flushleft]{threeparttable}
\newcommand\mc[1]{\multicolumn{1}{@{}c@{}}{#1}} % handy shortcut macro
\begin{document}
\hrule % just to illustrate width of textblock
\begin{table}[h]
\footnotesize
\setlength\tabcolsep{1.5pt} % let LaTeX determine whitespace between columns
\begin{threeparttable}
\caption{Optimal results of Example 2}
\label{tab:results2}
\begin{tabularx}{\textwidth}{@{}Y*{9}{d{4.2}}@{}}
\toprule
Item & \multicolumn{8}{c}{Ref.} & \mc{Our method}\\
\cmidrule(lr){2-9}
& \mc{1} & \mc{2} & \mc{3} & \mc{4} & \mc{5} & \mc{6} & \mc{7} & \mc{8}\\
\midrule
Utility (kW) & 2000 & 3800.00 & 4200.00 & 4200.00 & 4200.00 & 4200.00& 4200.00 & 4200.00 & 5000.00\\
Capital cost\tnote{a} (10\textsuperscript{3}\,\$)
& 163.27 & & & & & & & & \\
Total annual cost (10\textsuperscript{3}\,\$)
& 2268.59 & & & & \mc{--} & & & & \\
\bottomrule
\end{tabularx}
\begin{tablenotes}
\item[a] Based on the cost parameters from ref.~6.
\item[--] Not reported in literature.
\end{tablenotes}
\end{threeparttable}
\end{table}
\end{document}
\end{threeparttable} and the problem is solved. \end{adjustbox} – Nick Aug 11 '15 at 03:46
adjustboxbecause the table was too wide to fit a page, that's why the fonts got smaller --- and i took that from the answer you linked. Anyway, Mico's answer is much more complete. – henrique Aug 18 '15 at 19:25